Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

disintegrated.h

00001 /*
00002  * disintegrated.h: derived class for evolution of nothing
00003  *
00004  *.....................................................................
00005  *    version 1:  Jan 1994   Simon F. Portegies Zwart
00006  *    version 2:
00007  *...................................................................
00008  *     This file includes:
00009  *  1) definition of class disintegrated
00010  *
00011  *....................................................................
00012  */
00013 
00014 #ifndef    _DISINTEGRATED 
00015 #   define _DISINTEGRATED
00016 
00017 #include "stdinc.h"
00018 #include "single_star.h"
00019 #include "black_hole.h"
00020 
00021 class          super_giant;
00022 class          helium_giant;
00023 class          white_dwarf;
00024 /*-----------------------------------------------------------------------------
00025  *  disintegrated  --  a derived class for element evolution.
00026  *-----------------------------------------------------------------------------
00027  */
00028 class disintegrated : public single_star {
00029       protected :
00030          real suddenly_lost_mass;
00031       public :
00032          disintegrated(super_giant &);
00033          disintegrated(helium_giant &);
00034          disintegrated(white_dwarf &);
00035          disintegrated(node* n) : single_star(n) {suddenly_lost_mass=0;}
00036          ~disintegrated() {}
00037 
00038          stellar_type get_element_type() {return Disintegrated;}
00039          bool remnant() {return false;}
00040          bool hydrogen_envelope_star() {return false;}
00041          int no_of_elements() {return 0;}
00042 
00043          void instantaneous_element();
00044          void evolve_element(const real);
00045          void update();
00046          bool super_nova();
00047          void adjust_next_update_age() {}
00048 
00049         star* reduce_mass(const real);
00050         real mass_transfer_timescale(mass_transfer_type &type);
00051         star* subtrac_mass_from_donor(const real, real&);
00052         real add_mass_to_accretor(const real);
00053         real add_mass_to_accretor(real, const real);
00054 
00055         star* merge_elements(star*);
00056 
00057         real temperature();
00058         real magnitude();
00059         real bolometric_correction();
00060         void stellar_wind(const real);
00061         real gyration_radius_sq();
00062 
00063         real sudden_mass_loss();
00064 
00065    };
00066 #endif          // _DISINTEGRATED        
00067 
00068 
00069 
00070 
00071 
00072 
00073 
00074 
00075 
00076 
00077 
00078 
00079 
00080 
00081 
00082 
00083 

Generated on Wed Jul 20 12:43:36 2005 for Starlab by  doxygen 1.4.3