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

brown_dwarf.h

00001 /*
00002  * brown_dwarf.h: derived class for evolution for non-hydrogen core
00003  *                burning stars.
00004  *
00005  *.....................................................................
00006  *     version 1:  Jan 1994   Simon F. Portegies Zwart
00007  *     version 2:
00008  *...................................................................
00009  *     This file includes:
00010  *  1) definition of class brown_dwarf
00011  *
00012  *....................................................................
00013  */
00014 
00015 #ifndef    _BROWN_DWARF
00016 #   define _BROWN_DWARF
00017 
00018 #include "single_star.h"
00019 //#include "proto_star.h"
00020 
00021 class    main_sequence;
00022 class    proto_star;
00023 
00024 /*-----------------------------------------------------------------------------
00025  *  brown_dwarf  --  a derived class for element evolution.
00026  *-----------------------------------------------------------------------------
00027  */
00028 class brown_dwarf : public single_star {
00029       private:
00030 
00031           real brown_dwarf_core_mass();
00032 
00033       public :
00034 
00035          brown_dwarf(node* n) : single_star(n) {}
00036          brown_dwarf(main_sequence &);
00037          brown_dwarf(proto_star &);
00038          ~brown_dwarf() {}
00039 
00040         stellar_type get_element_type();
00041         bool remnant() {return false;}
00042 
00043         void instantaneous_element();
00044         void evolve_element(const real);
00045         void update();
00046 
00047         star* reduce_mass(const real);
00048         star* subtrac_mass_from_donor(const real, real&);
00049         real accretion_limit(const real, const real); 
00050         real add_mass_to_accretor(const real);
00051         real add_mass_to_accretor(real, const real);
00052         void adjust_next_update_age() {/* do nothing */}
00053         void accrete_from_envelope(const real);
00054 
00055         star* merge_elements(star*);
00056         real zeta_thermal();
00057         real gyration_radius_sq();
00058 
00059       };
00060 #endif          // _BROWN_DWARF

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