00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef _SSTAR_TO_DYN
00016 # define _SSTAR_TO_DYN
00017
00018 #include "starbase.h"
00019 #include "dyn.h"
00020
00021 #include "stdinc.h"
00022 #include "constants.h"
00023
00024
00025
00026
00027
00028
00029 void addstar(dyn*,
00030 real t_rel=0,
00031 stellar_type type=Main_Sequence,
00032 bool verbose = false);
00033 void sstar_stats(dyn*, bool, vec, bool);
00034
00035 vec conv_v_star_to_dyn(vec&, real, real);
00036 vec anomalous_velocity(dyn*);
00037 real get_effective_radius(dyn*);
00038 real get_total_mass(dyn*);
00039 stellar_type get_element_type(dyn*);
00040 bool has_sstar(dyn*);
00041
00042
00043 bool stellar_evolution(dyn* b);
00044 real sudden_mass_loss(dyn* b);
00045
00046
00047 star_state make_star_state(dyn*);
00048
00049
00050 void extract_story_chapter(char* type, real&, real&,
00051 real&, real&, real&,
00052 real&, real&,
00053 real&, real&, story& s);
00054 void extract_line_text(char*, real&, real&, real&,
00055 real&, real&, real&, real&,
00056 real&, real&, story&);
00057
00058 bool merge_with_primary(star* primary, star *secondary);
00059
00060 void print_sstar_time_scales(dyn*);
00061
00062
00063 real compute_projected_luminosity_radii(dyn * b, int axis,
00064 bool Llagr = true,
00065 int nzones = 10,
00066 bool nonlin=false,
00067 boolfn bf=NULL);
00068
00069 enum radius_fraction {rcore_rvirial, r10_r90_light, proj_r10_r90_light};
00070 void print_fitted_king_model(const real fractional_radius,
00071 const radius_fraction
00072 which_fraction = proj_r10_r90_light);
00073
00074 void put_ubvri(dyn*);
00075
00076
00077 void new_camera_position(vec&, vec, vec, int, int);
00078 void rdc_and_wrt_movie(dyn*, bool, real, real, char);
00079 void print_povray_header(dyn*, vec, int, real, real, int, int, real,
00080 int, int, bool);
00081 void print_mpegplayer_param_file(ostream&,
00082 int first_frame =1,
00083 int last_frame = 100,
00084 int horizontal = 120,
00085 int vertical = 90,
00086 int GOP_size = 10);
00087
00088
00089
00090 void get_ubvri_star(dyn *bi, stellar_type& stype,
00091 real& U, real& B, real& V, real& R, real& I);
00092
00093 void get_Lubvri_star(dyn *bi, stellar_type& stype,
00094 real& Lu, real& Lb, real& Lv, real& Lr, real& Li);
00095
00096
00097 #endif // _SSTAR_TO_DYN