const string N_SUB_O = "no"; const string N_SUB_E = "ne"; const string N_SUB_X = "nx"; const string N_SUB_Y = "ny"; const string N_SUB_Z = "nz"; void DispLEM(double lambda, string szMaterial, int enterAfter); void DispLEMT(double lambda, string szMaterial, double temperature); int LambdaRangeCheck(double lambda, double lambdamin, double lambdamax, string szMaterial); void PopulateYLFTable(); void PopulateSiOTable(double n1,double n2,double n3,double n4,double n5,double lambda); void PopulateSaltWaterTable(double lambda, double n1); const string szBR = "
\n"; const string szMatDir="/usr/local/share/httpd/htdocs/cgi-bin/MaterialData/"; void CalcKAP(double lambda, double *nx, double *ny, double *nz, double * kx); double CalcIndexWithCauchy(double A, double B, double C, double lambda); DispGlassInfo(string szMaterial, double dnabs, double melttomelt,double n2,double n1,double drel); double nair(double lambda,double temperature,double pressure); double nabs(double lambda,double temperature, double B1,double B2,double B3,double C1,double C2,double C3,//index at To (20 degC) double D0,double D1,double D2,double E0,double E1,double ltk);//for dn/dT double dnabsbydt(double lambda,double temperature, double B1,double B2,double B3,double C1,double C2,double C3,//index at To (20 degC) double D0,double D1,double D2,double E0,double E1,double ltk);//for dn/dT double dnrelbydt(double lambda,double temperature, double B1,double B2,double B3,double C1,double C2,double C3,//index at To (20 degC) double D0,double D1,double D2,double E0,double E1,double ltk);//for dn/dT double dnairbydt(double lambda,double temperature,double pressure); double ComplexReflection(double n,double k); void LambdaOutOfRangeRangeMessage(double minLambda, double maxLambda, double lambda, string szMaterial); void CalcAlGaN(float lambda, float x, float b,float *no, float *ne, float *bandGap); void PopulateCO2Table(double lambda, double tv1, string szFileName, vector pressure); void PopulateArTable(double lambda, vector n_vector); double H2SO4HNO3H2O(double wts, double wtn, double lambda, double temperature); double ahno3(double wtn, double lambda); double asul(double wts,double lambda); double ah2o(double lambda); double rho1(double wts,double wtn,double temperature); void DisplayH2SO4Table( double x, double lambda, double temperature); double ComplexReflection(double n,double k); void DispMetalRefl(double n, double k, double n2,double k2); double Determinant3x3(double a0, double a1, double a2, double a3, double a4, double a5, double a6, double a7, double a8); void ReturnCauchyCoefficients(double n1,double lambda1,double n2,double lambda2,double n3, double lambda3,double *A, double *B , double *C); double CalcNitrogen(double lambda, double inref_temp); double LNno(double lambda,double temperature); double LNne(double lambda,double temperature); double LNne2(double lambda,double temperature); double LNno2(double lambda,double temperature); double TempDepSellmeier( double S10, double S11,double S12, double S13, double S14, double S20, double S21,double S22, double S23, double S24, double S30, double S31,double S32, double S33, double S34, double L1, double L2, double L3, double lambda, double temperature); void DispRed1Param(string szParameter, double value, int p, double tol); void DispRed2Param(string szParameter1, double value1, int p1,double tol1,string szParameter2, double value2, int p2, double tol2); void DispRed3Param(string szParameter1, double value1, int p1,string szParameter2, double value2, int p2,string szParameter3, double value3, int p3); void Disp4Refs (string szRef1, string szRef2,string szRef3, string szRef4); void Disp3Refs (string szRef1, string szRef2,string szRef3 ); void Disp2Refs (string szRef1, string szRef2); void Disp1Ref (string szRef1); /////////////////////////////////////////////////////////////////////////////////////// // // Headers and constants for quaternary calculations // CCR0020 // /////////////////////////////////////////////////////////////////////////////////////// const double QUATERNARY_BINARY_In_As_Eo= 0.36 ; const double QUATERNARY_BINARY_In_As_do= 0.38; const double QUATERNARY_TERNARY_Al_Ga_As_Eo= 0.37; const double QUATERNARY_TERNARY_Al_Ga_As_do= 0; const double QUATERNARY_TERNARY_Al_In_As_Eo= 0.7; const double QUATERNARY_TERNARY_Al_In_As_do= 0.15; const double QUATERNARY_TERNARY_Ga_In_As_Eo= 0.38; const double QUATERNARY_TERNARY_Ga_In_As_do= 0.15; const double QUATERNARY_BINARY_Al_As_Eo= 2.95 ; const double QUATERNARY_BINARY_Al_As_do= 0.28; const double QUATERNARY_BINARY_Al_As_A= 25.3; const double QUATERNARY_BINARY_Al_As_B= -0.8; const double QUATERNARY_BINARY_Ga_As_A= 6.3; const double QUATERNARY_BINARY_Ga_As_B= 9.4; const double QUATERNARY_BINARY_In_As_A= 5.14; const double QUATERNARY_BINARY_In_As_B= 10.15; const double QUATERNARY_BINARY_AsAlGaIn_start_x= 0.09; const double QUATERNARY_BINARY_AsAlGaIn_end_x= 0.37; const double QUATERNARY_BINARY_AsAlGaIn_start_Eo= 0.9; const double QUATERNARY_BINARY_AsAlGaIn_end_Eo= 1.42; const double QUATERNARY_BINARY_Ga_As_Eo= 1.42; const double QUATERNARY_BINARY_Ga_As_do= 0.34; const double QUATERNARY_BINARY_Al_As_k= 0.91; const double QUATERNARY_BINARY_Ga_As_k= 0.44; const double QUATERNARY_BINARY_In_As_k= 0.27; const double QUATERNARY_TERNARY_Al_Ga_As_C= -30; const double QUATERNARY_TERNARY_Al_In_As_C= -80; const double QUATERNARY_TERNARY_Ga_In_As_C= -78.8; float QUATERNARY_compute_n_AlGaInAs(float x, float lambda); float QUATERNARY_Qb_eqn_4b(float x, float y,float TABCu,float TACDv,float TABDw); float QUATERNARY_TABCx_eqn_3(float x, float BAB, float BAC, float CABC); float QUATERNARY_Qb_lin_eqn_1b(float x, float y, float BAB, float BAC, float BAD); float QUATERNARY_QB_bow_eqn_2b(float x, float y, float CABC, float CABD, float CACD); float QUATERNARY_n_eqn_5(float Eo, float A, float B, float delta_o, float photon_energy);