00001
00002
00003
00004 #ifndef _LINES_SERVICE_H_
00005 #define _LINES_SERVICE_H_
00006
00007
00009 void outline( transition *t );
00010
00018 void linadd(
00019 double xInten,
00020 realnum wavelength,
00021 const char *chLab,
00022 char chInfo ,
00023 const char *chComment );
00024
00034 void lindst(double xInten,
00035 realnum wavelength,
00036 const char *chLab,
00037 long int ipnt,
00038 char chInfo,
00039 bool lgOutToo,
00040 const char *chComment);
00041
00047 double emergent_line(
00048
00049 double emissivity_in ,
00050
00051 double emissivity_out ,
00052
00053 long int ipCont );
00054
00061 void PntForLine(double wavelength,
00062 const char *chLabel,
00063 long int *ipnt);
00064
00069 void PutLine(transition * t, const char *chComment);
00070
00076 void PutLine(transition * t, const char *chComment, const char *chLabel);
00077
00081 double TexcLine(transition * t);
00082
00086 void DumpLine(transition * t);
00087
00093 double GetGF(double eina,
00094 double enercm,
00095 double gup);
00096
00102 double eina(double gf,
00103 double enercm,
00104 double gup);
00105
00111 double abscf(double gf,
00112 double enercm,
00113 double gl);
00114
00116 #define LOWDEN_LYMAN 0
00117
00121 double emit_frac( transition *t );
00122
00126 void chIonLbl( char*, transition * t );
00127
00132 char* chLineLbl(transition * t );
00133
00138 double RefIndex(double EnergyWN);
00139
00140
00145 void PutCS(double cs,
00146 transition * t);
00147
00155 realnum WavlenErrorGet( realnum wavelength );
00156
00160 double OccupationNumberLine( transition * t );
00161
00165 void PutExtra(double Extra);
00166
00170 void TransitionJunk( transition *t );
00171
00175 void EmLineJunk( emission * t );
00176
00180 void CollisionJunk( collision * t );
00181
00185 void StateJunk( quantumState * t );
00186
00190 void TransitionZero( transition *t );
00191
00195 void EmLineZero( emission * t );
00196
00200 void CollisionZero( collision * t );
00201
00205 void StateZero( quantumState * t );
00206
00211 void LineConvRate2CS( transition * t , realnum rate );
00212
00217 double ConvRate2CS( realnum gHi , realnum rate );
00218
00222 bool lgTauGood( transition * t);
00223
00227 void MakeCS(transition * t );
00228
00235 double totlin(
00236 int chInfo);
00237
00238
00244 void FndLineHt(long int *level,
00245
00246 long int *ipStrong,
00247 double *Strong);
00248
00250 quantumState *AddState2Stack( void );
00251
00254 emission *AddLine2Stack( bool lgRadiativeTrans );
00255 emission *AddLine2Stack( realnum Aul, transition *trans );
00256
00257
00258 #endif