📄 atmostrans.cpp
字号:
//
//AtmosTrans.cpp
//
#include "stdafx.h"
#include"AtmosTrans.h"
//从-49摄氏度到49摄氏度空气相对湿度100%的每公里的可凝结水毫米数(mm/km)
const double AtmosTrans::m_dW0_Table[99]={
//-49摄氏度~-40摄氏度
0.0431, 0.0485, 0.0545, 0.0612, 0.0687, 0.0769, 0.0861, 0.0962, 0.1075, 0.1200,
//-39摄氏度~-30摄氏度
0.134, 0.149, 0.166, 0.1849, 0.205, 0.227, 0.252, 0.279, 0.308, 0.341,
//-29摄氏度~-20摄氏度
0.376, 0.415, 0.458, 0.505, 0.556, 0.611, 0.672, 0.738, 0.810, 0.888,
//-19摄氏度~-10摄氏度
0.973, 1.066, 1.166, 1.275, 1.393, 1.520, 1.658, 1.808, 1.971, 2.145,
//-9摄氏度~0摄氏度
2.33, 2.54, 2.76, 2.99, 3.25, 3.52, 3.82, 4.13, 4.47, 4.84,
//1摄氏度~10摄氏度
5.18, 5.55, 5.94, 6.35, 6.79, 7.25, 7.74, 8.26, 8.81, 9.39,
//11摄氏度~20摄氏度
10.00, 10.64, 11.33, 12.05, 12.81, 13.61, 14.45, 15.34, 16.28, 17.3,
//21摄氏度~30摄氏度
18.3, 19.4, 20.5, 21.7, 23.0, 24.3, 25.7, 27.2, 28.7, 30.3,
//31摄氏度~40摄氏度
32.0, 33.7, 35.6, 37.5, 39.5, 41.6, 43.6, 46.1, 48.5, 51.0,
//41摄氏度~49摄氏度
53.6, 56.3, 59.2, 62.1, 65.2, 68.4, 71.9, 75.3, 78.9
};
//3-5um的海平面上水平路程水蒸气的光谱透射率
const double AtmosTrans::m_dVapor_Table1[20][14]={
// 0 0.1 0.2 0.5 1 2 5 10 20 50 100 200 500 1000/mm
//3.0um-3.4um
{1, 0.851, 0.790, 0.673, 0.552, 0.401, 0.184, 0.060, 0.008, 0, 0, 0, 0, 0 },
{1, 0.900, 0.860, 0.779, 0.692, 0.574, 0.375, 0.210, 0.076, 0.005, 0, 0, 0, 0 },
{1, 0.925, 0.894, 0.833, 0.766, 0.674, 0.506, 0.347, 0.184, 0.035, 0.003, 0, 0, 0 },
{1, 0.950, 0.930, 0.888, 0.843, 0.779, 0.658, 0.531, 0.377, 0.161, 0.048, 0.005, 0, 0 },
{1, 0.973, 0.962, 0.939, 0.914, 0.880, 0.811, 0.735, 0.633, 0.448, 0.285, 0.130, 0.017, 0.001},
//3.5um-3.9um
{1, 0.988, 0.983, 0.973, 0.962, 0.946, 0.915, 0.881, 0.832, 0.736, 0.635, 0.502, 0.287, 0.133},
{1, 0.994, 0.992, 0.987, 0.982, 0.973, 0.958, 0.947, 0.916, 0.866, 0.812, 0.738, 0.596, 0.452},
{1, 0.997, 0.994, 0.991, 0.988, 0.982, 0.972, 0.960, 0.944, 0.911, 0.874, 0.823, 0.724, 0.616},
{1, 0.998, 0.997, 0.995, 0.994, 0.991, 0.986, 0.980, 0.972, 0.956, 0.937, 0.911, 0.860, 0.802},
{1, 0.998, 0.997, 0.995, 0.994, 0.991, 0.986, 0.980, 0.972, 0.956, 0.937, 0.911, 0.860, 0.802},
//4.0um-4.4um
{1, 0.997, 0.995, 0.993, 0.990, 0.987, 0.977, 0.970, 0.960, 0.930, 0.900, 0.870, 0.790, 0.700},
{1, 0.977, 0.994, 0.991, 0.988, 0.982, 0.972, 0.960, 0.944, 0.911, 0.874, 0.823, 0.724, 0.616},
{1, 0.994, 0.992, 0.987, 0.982, 0.973, 0.958, 0.947, 0.916, 0.866, 0.812, 0.738, 0.596, 0.452},
{1, 0.991, 0.984, 0.975, 0.972, 0.950, 0.937, 0.910, 0.873, 0.800, 0.722, 0.615, 0.425, 0.260},
{1, 0.980, 0.972, 0.955, 0.937, 0.911, 0.860, 0.802, 0.723, 0.574, 0.428, 0.263, 0.076, 0.012},
//4.5um-4.9um
{1, 0.970, 0.958, 0.932, 0.905, 0.866, 0.790, 0.707, 0.595, 0.400, 0.235, 0.093, 0.008, 0 },
{1, 0.960, 0.943, 0.911, 0.874, 0.822, 0.723, 0.617, 0.478, 0.262, 0.113, 0.024, 0, 0 },
{1, 0.950, 0.930, 0.888, 0.843, 0.779, 0.658, 0.531, 0.377, 0.161, 0.048, 0.005, 0, 0 },
{1, 0.940, 0.915, 0.866, 0.812, 0.736, 0.595, 0.452, 0.289, 0.117, 0.018, 0.001, 0, 0 },
{1, 0.930, 0.902, 0.844, 0.782, 0.695, 0.536, 0.381, 0.216, 0.064, 0.005, 0, 0, 0 }
};
//8-14um的海平面上水平路程水蒸气的光谱透射率
const double AtmosTrans::m_dVapor_Table2[60][14]={
// 0 0.1 0.2 0.5 1 2 5 10 20 50 100 200 500 1000/mm
//8.0um-8.4um
{1, 0.995, 0.990, 0.975, 0.951, 0.904, 0.777, 0.603, 0.365, 0.080, 0.006, 0, 0, 0 },
{1, 0.997, 0.994, 0.986, 0.972, 0.945, 0.869, 0.754, 0.568, 0.244, 0.059, 0.003, 0, 0 },
{1, 0.997, 0.993, 0.982, 0.964, 0.930, 0.834, 0.696, 0.484, 0.163, 0.027, 0, 0, 0 },
{1, 0.997, 0.995, 0.988, 0.976, 0.953, 0.887, 0.786, 0.618, 0.300, 0.090, 0.008, 0, 0 },
{1, 0.998, 0.995, 0.987, 0.975, 0.950, 0.880, 0.774, 0.599, 0.278, 0.077, 0.006, 0, 0 },
//8.5um-8.9um
{1, 0.997, 0.994, 0.986, 0.972, 0.944, 0.866, 0.750, 0.562, 0.237, 0.056, 0.003, 0, 0 },
{1, 0.997, 0.996, 0.992, 0.982, 0.965, 0.915, 0.837, 0.702, 0.411, 0.169, 0.029, 0, 0 },
{1, 0.997, 0.996, 0.992, 0.983, 0.966, 0.916, 0.839, 0.704, 0.416, 0.173, 0.030, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.983, 0.966, 0.917, 0.841, 0.707, 0.421, 0.177, 0.031, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.983, 0.966, 0.918, 0.843, 0.709, 0.425, 0.180, 0.032, 0, 0 },
//9.0um-9.4um
{1, 0.999, 0.997, 0.992, 0.984, 0.968, 0.921, 0.848, 0.719, 0.440, 0.193, 0.037, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.985, 0.970, 0.926, 0.858, 0.735, 0.464, 0.215, 0.046, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.985, 0.971, 0.929, 0.863, 0.744, 0.478, 0.228, 0.052, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.972, 0.930, 0.867, 0.750, 0.489, 0.239, 0.057, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.973, 0.933, 0.870, 0.756, 0.498, 0.248, 0.061, 0, 0 },
//9.5um-9.9um
{1, 0.998, 0.997, 0.993, 0.987, 0.973, 0.934, 0.873, 0.762, 0.507, 0.257, 0.066, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.936, 0.876, 0.766, 0.516, 0.265, 0.070, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.937, 0.878, 0.770, 0.521, 0.270, 0.073, 0, 0 },
{1, 0.998, 0.997, 0.994, 0.987, 0.975, 0.938, 0.880, 0.773, 0.526, 0.277, 0.077, 0, 0 },
{1, 0.998, 0.997, 0.994, 0.987, 0.975, 0.939, 0.882, 0.777, 0.532, 0.283, 0.080, 0, 0 },
//10.0um-10.4um
{1, 0.999, 0.998, 0.994, 0.988, 0.975, 0.940, 0.883, 0.780, 0.538, 0.289, 0.083, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.975, 0.940, 0.883, 0.780, 0.538, 0.289, 0.083, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.975, 0.940, 0.883, 0.780, 0.538, 0.289, 0.083, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.940, 0.884, 0.781, 0.540, 0.292, 0.085, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.941, 0.885, 0.782, 0.542, 0.294, 0.086, 0, 0 },
//10.5um-10.9um
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.941, 0.886, 0.784, 0.544, 0.295, 0.087, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.942, 0.887, 0.786, 0.548, 0.300, 0.089, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.942, 0.887, 0.787, 0.550, 0.302, 0.091, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.941, 0.886, 0.784, 0.544, 0.295, 0.087, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.988, 0.976, 0.940, 0.884, 0.781, 0.540, 0.292, 0.085, 0, 0 },
//11.0um-11.4um
{1, 0.999, 0.998, 0.994, 0.988, 0.975, 0.940, 0.883, 0.779, 0.536, 0.287, 0.082, 0, 0 },
{1, 0.999, 0.998, 0.994, 0.987, 0.975, 0.939, 0.882, 0.777, 0.532, 0.283, 0.080, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.972, 0.931, 0.867, 0.750, 0.487, 0.237, 0.056, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.985, 0.970, 0.927, 0.859, 0.738, 0.467, 0.218, 0.048, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.971, 0.930, 0.865, 0.748, 0.485, 0.235, 0.055, 0, 0 },
//11.5um-11.9um
{1, 0.998, 0.997, 0.993, 0.986, 0.972, 0.932, 0.868, 0.753, 0.493, 0.243, 0.059, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.935, 0.875, 0.765, 0.513, 0.262, 0.069, 0, 0 },
{1, 0.998, 0.996, 0.990, 0.980, 0.961, 0.906, 0.820, 0.673, 0.372, 0.138, 0.019, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.982, 0.969, 0.925, 0.863, 0.733, 0.460, 0.212, 0.045, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.972, 0.932, 0.869, 0.755, 0.495, 0.245, 0.060, 0, 0 },
//12.0um-12.4um
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.937, 0.878, 0.770, 0.521, 0.270, 0.073, 0, 0 },
{1, 0.998, 0.997, 0.994, 0.987, 0.975, 0.938, 0.880, 0.773, 0.526, 0.277, 0.077, 0, 0 },
{1, 0.998, 0.997, 0.994, 0.987, 0.975, 0.938, 0.880, 0.775, 0.528, 0.279, 0.078, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.937, 0.878, 0.770, 0.521, 0.270, 0.073, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.987, 0.974, 0.935, 0.874, 0.764, 0.511, 0.261, 0.068, 0, 0 },
//12.5um-12.9um
{1, 0.998, 0.997, 0.993, 0.986, 0.973, 0.933, 0.871, 0.759, 0.502, 0.252, 0.063, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.986, 0.972, 0.931, 0.868, 0.752, 0.491, 0.241, 0.058, 0, 0 },
{1, 0.998, 0.997, 0.993, 0.985, 0.971, 0.929, 0.863, 0.744, 0.478, 0.228, 0.052, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.985, 0.970, 0.926, 0.858, 0.736, 0.466, 0.217, 0.047, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.984, 0.969, 0.924, 0.853, 0.728, 0.452, 0.204, 0.041, 0, 0 },
//13.0um-13.4um
{1, 0.999, 0.997, 0.992, 0.984, 0.967, 0.921, 0.846, 0.718, 0.437, 0.191, 0.036, 0, 0 },
{1, 0.998, 0.996, 0.991, 0.983, 0.966, 0.918, 0.843, 0.709, 0.424, 0.180, 0.032, 0, 0 },
{1, 0.998, 0.996, 0.991, 0.982, 0.965, 0.915, 0.837, 0.701, 0.411, 0.169, 0.028, 0, 0 },
{1, 0.998, 0.996, 0.991, 0.982, 0.964, 0.912, 0.831, 0.690, 0.397, 0.153, 0.025, 0, 0 },
{1, 0.998, 0.996, 0.990, 0.981, 0.962, 0.908, 0.825, 0.681, 0.382, 0.146, 0.021, 0, 0 },
//13.5um-13.9um
{1, 0.998, 0.996, 0.990, 0.980, 0.961, 0.905, 0.819, 0.670, 0.368, 0.136, 0.019, 0, 0 },
{1, 0.998, 0.996, 0.990, 0.979, 0.959, 0.902, 0.813, 0.661, 0.355, 0.126, 0.016, 0, 0 },
{1, 0.998, 0.996, 0.989, 0.979, 0.958, 0.898, 0.807, 0.651, 0.342, 0.117, 0.014, 0, 0 },
{1, 0.998, 0.996, 0.989, 0.978, 0.956, 0.894, 0.800, 0.640, 0.328, 0.107, 0.011, 0, 0 },
{1, 0.997, 0.995, 0.988, 0.977, 0.955, 0.891, 0.793, 0.629, 0.313, 0.098, 0.010, 0, 0 }
};
//3-5um的海平面上水平路程二氧化碳的光谱透射率
const double AtmosTrans::m_dCO2_Table1[20][14]={
// 0 0.1 0.2 0.5 1 2 5 10 20 50 100 200 500 1000/km
//3.0um-3.4um
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
//3.5um-3.9um
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
//4.0um-4.4um
{1, 0.998, 0.997, 0.996, 0.994, 0.991, 0.986, 0.980, 0.971, 0.955, 0.937, 0.911, 0.859, 0.802},
{1, 0.983, 0.975, 0.961, 0.944, 0.921, 0.876, 0.825, 0.755, 0.622, 0.485, 0.322, 0.118, 0.027},
{1, 0.673, 0.551, 0.445, 0.182, 0.059, 0.003, 0, 0, 0, 0, 0, 0, 0 },
{1, 0.098, 0.016, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
{1, 0.481, 0.319, 0.115, 0.026, 0.002, 0, 0, 0, 0, 0, 0, 0, 0 },
//4.5um-4.9um
{1, 0.957, 0.949, 0.903, 0.863, 0.807, 0.699, 0.585, 0.439, 0.222, 0.084, 0.014, 0, 0 },
{1, 0.995, 0.993, 0.989, 0.985, 0.978, 0.966, 0.951, 0.931, 0.891, 0.845, 0.783, 0.663, 0.539},
{1, 0.995, 0.993, 0.989, 0.985, 0.978, 0.966, 0.951, 0.931, 0.891, 0.845, 0.783, 0.663, 0.539},
{1, 0.976, 0.966, 0.945, 0.922, 0.891, 0.828, 0.759, 0.664, 0.492, 0.331, 0.169, 0.030, 0.002},
{1, 0.975, 0.964, 0.943, 0.920, 0.886, 0.822, 0.750, 0.652, 0.468, 0.313, 0.153, 0.024, 0.001}
};
//8-14um的海平面上水平路程二氧化碳的光谱透射率
const double AtmosTrans::m_dCO2_Table2[60][14]={
// 0 0.1 0.2 0.5 1 2 5 10 20 50 100 200 500 1000/km
//8.0um-8.4um
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
//8.5um-8.9um
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
//9.0um-9.4um
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
{1, 1, 1, 1, 0.999, 0.999, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 1, 1, 1, 0.999, 0.998, 0.995, 0.991, 0.982, 0.955, 0.913, 0.834, 0.597, 0.202},
{1, 1, 0.999, 0.997, 0.995, 0.990, 0.975, 0.951, 0.904, 0.776, 0.605, 0.363, 0, 0 },
{1, 0.997, 0.993, 0.982, 0.965, 0.931, 0.837, 0.700, 0.491, 0.168, 0.028, 0.001, 0, 0 },
//9.5um-9.9um
{1, 0.996, 0.993, 0.983, 0.967, 0.935, 0.842, 0.715, 0.512, 0.187, 0.035, 0.001, 0, 0 },
{1, 0.998, 0.996, 0.990, 0.980, 0.961, 0.906, 0.821, 0.675, 0.363, 0.140, 0.029, 0, 0 },
{1, 0.998, 0.995, 0.986, 0.973, 0.947, 0.873, 0.761, 0.580, 0.256, 0.065, 0.004, 0, 0 },
{1, 0.999, 0.997, 0.992, 0.984, 0.969, 0.924, 0.858, 0.730, 0.455, 0.206, 0.043, 0, 0 },
{1, 0.999, 0.998, 0.995, 0.989, 0.979, 0.948, 0.897, 0.811, 0.585, 0.342, 0.123, 0, 0 },
//10.0um-10.4um
{1, 1, 1, 1, 0.999, 0.997, 0.994, 0.989, 0.978, 0.945, 0.892, 0.797, 0.512, 0.037},
{1, 1, 1, 0.999, 0.998, 0.996, 0.990, 0.980, 0.960, 0.902, 0.814, 0.663, 0.210, 0 },
{1, 0.998, 0.997, 0.994, 0.988, 0.977, 0.943, 0.890, 0.792, 0.558, 0.312, 0.097, 0, 0 },
{1, 0.998, 0.997, 0.994, 0.987, 0.975, 0.939, 0.881, 0.777, 0.532, 0.283, 0.080, 0, 0 },
{1, 1, 1, 1, 0.999, 0.998, 0.995, 0.991, 0.982, 0.955, 0.913, 0.834, 0.597, 0.202},
//10.5um-10.9um
{1, 1, 1, 1, 0.999, 0.998, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 1, 1, 1, 0.999, 0.999, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 1, 1, 1, 1, 0.999, 0.999, 0.997, 0.995, 0.986, 0.973, 0.947, 0.869, 0.739},
{1, 1, 1, 1, 0.999, 0.998, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 1, 1, 0.999, 0.999, 0.997, 0.993, 0.986, 0.973, 0.934, 0.872, 0.761, 0.428, 0 },
//11.0um-11.4um
{1, 1, 1, 0.999, 0.999, 0.997, 0.993, 0.986, 0.973, 0.934, 0.872, 0.761, 0.428, 0 },
{1, 1, 1, 0.999, 0.998, 0.997, 0.992, 0.984, 0.969, 0.923, 0.855, 0.726, 0.339, 0 },
{1, 1, 1, 0.999, 0.998, 0.995, 0.989, 0.978, 0.955, 0.892, 0.796, 0.633, 0.144, 0 },
{1, 1, 0.999, 0.999, 0.997, 0.994, 0.985, 0.971, 0.942, 0.862, 0.742, 0.552, 0, 0 },
{1, 1, 0.999, 0.998, 0.997, 0.993, 0.983, 0.966, 0.934, 0.842, 0.709, 0.503, 0, 0 },
//11.5um-11.9um
{1, 1, 0.999, 0.998, 0.996, 0.992, 0.980, 0.960, 0.921, 0.814, 0.661, 0.438, 0, 0 },
{1, 1, 0.999, 0.998, 0.995, 0.991, 0.977, 0.955, 0.912, 0.794, 0.632, 0.399, 0, 0 },
{1, 1, 0.999, 0.998, 0.995, 0.991, 0.977, 0.955, 0.912, 0.794, 0.632, 0.399, 0, 0 },
{1, 1, 0.999, 0.998, 0.997, 0.993, 0.983, 0.966, 0.934, 0.842, 0.709, 0.503, 0, 0 },
{1, 1, 1, 0.999, 0.998, 0.995, 0.989, 0.978, 0.955, 0.892, 0.796, 0.633, 0.144, 0 },
//12.0um-12.4um
{1, 1, 1, 1, 0.999, 0.999, 0.997, 0.993, 0.986, 0.966, 0.934, 0.872, 0.686, 0.376},
{1, 1, 1, 1, 0.999, 0.998, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 1, 1, 1, 0.999, 0.998, 0.998, 0.995, 0.991, 0.978, 0.955, 0.914, 0.791, 0.586},
{1, 0.999, 0.998, 0.995, 0.990, 0.981, 0.952, 0.907, 0.823, 0.614, 0.376, 0.142, 0, 0 },
{1, 0.997, 0.994, 0.985, 0.970, 0.941, 0.859, 0.738, 0.545, 0.218, 0.048, 0.002, 0, 0 },
//12.5um-12.9um
{1, 0.993, 0.987, 0.968, 0.936, 0.877, 0.719, 0.517, 0.268, 0.037, 0.001, 0, 0, 0 },
{1, 0.990, 0.980, 0.950, 0.903, 0.815, 0.599, 0.358, 0.129, 0.006, 0, 0, 0, 0 },
{1, 0.998, 0.996, 0.989, 0.979, 0.959, 0.899, 0.809, 0.654, 0.346, 0.120, 0.015, 0, 0 },
{1, 0.995, 0.990, 0.974, 0.949, 0.901, 0.770, 0.592, 0.351, 0.072, 0.005, 0, 0, 0 },
{1, 0.993, 0.985, 0.962, 0.925, 0.856, 0.677, 0.458, 0.210, 0.020, 0, 0, 0, 0 },
//13.0um-13.4um
{1, 0.996, 0.991, 0.977, 0.955, 0.912, 0.794, 0.630, 0.397, 0.099, 0.010, 0, 0, 0 },
{1, 0.995, 0.990, 0.974, 0.949, 0.900, 0.768, 0.592, 0.348, 0.071, 0.005, 0, 0, 0 },
{1, 0.989, 0.978, 0.946, 0.895, 0.801, 0.575, 0.330, 0.109, 0.004, 0, 0, 0, 0 },
{1, 0.975, 0.952, 0.884, 0.782, 0.611, 0.292, 0.085, 0.007, 0, 0, 0, 0, 0 },
{1, 0.965, 0.935, 0.846, 0.715, 0.512, 0.187, 0.035, 0.001, 0, 0, 0, 0, 0 },
//13.5um-13.9um
{1, 0.946, 0.901, 0.767, 0.593, 0.352, 0.070, 0.005, 0, 0, 0, 0, 0, 0 },
{1, 0.937, 0.901, 0.792, 0.627, 0.351, 0.097, 0.009, 0, 0, 0, 0, 0, 0 },
{1, 0.954, 0.916, 0.803, 0.644, 0.415, 0.110, 0.012, 0, 0, 0, 0, 0, 0 },
{1, 0.917, 0.858, 0.681, 0.464, 0.215, 0.021, 0, 0, 0, 0, 0, 0, 0 },
{1, 0.859, 0.778, 0.534, 0.286, 0.082, 0.002, 0, 0, 0, 0, 0, 0, 0 }
};
int AtmosTrans::FindOrderInW0Table(int temperature)
{
int order = temperature + 49; //通过温度算出数组下标
if(order < 0) //温度小于-49摄氏度按-49摄氏度处理
order = 0;
if(order > 98) //温度大于49摄氏度按49摄氏度处理
order = 98;
return order; //返回数组下标
};
double AtmosTrans::GetW0(int temperature)
{
int order = FindOrderInW0Table(temperature);
return m_dW0_Table[order];
};
void AtmosTrans::FindOrderInTable1(int &row, int &line1, int &line2,
double wavelength, double wOrdistance)
{
if(wavelength < 3.0) //波长小于3um按3um处理
row = 0;
if(wavelength > 4.9) //波长大于5um按5um处理
row = 19;
if(3.0 <= wavelength && wavelength <= 4.9) //波长间隔为0.1um,通过波长算出数组行标(row)
{
row = (int)(wavelength*10+0.5)-30;
/* if(wavelength==3.0)
row = 0;
if(wavelength==3.1)
row = 1;
if(wavelength==3.2)
row = 2;
if(wavelength==3.3)
row = 3;
if(wavelength==3.4)
row = 4;
if(wavelength==3.5)
row = 5;
if(wavelength==3.6)
row = 6;
if(wavelength==3.7)
row = 7;
if(wavelength==3.8)
row = 8;
if(wavelength==3.9)
row = 9;
if(wavelength==4.0)
row = 10;
if(wavelength==4.1)
row = 11;
if(wavelength==4.2)
row = 12;
if(wavelength==4.3)
row = 13;
if(wavelength==4.4)
row = 14;
if(wavelength==4.5)
row = 15;
if(wavelength==4.6)
row = 16;
if(wavelength==4.7)
row = 17;
if(wavelength==4.8)
row = 18;
if(wavelength==4.9)
row = 19;
*/ }
if(wOrdistance < 0.0) //可凝结水毫米数(或路程)小于0按0处理
line1 = line2 = 0;
if(wOrdistance > 1000.0){ //可凝结水毫米数(或路程)大于1000的处理
line1 =12; line2 = 13;
}
if(0.0 <= wOrdistance && wOrdistance <= 1000.0) //通过可凝结水毫米数(或路程)算出数组列标(line1,line2)
{
if(wOrdistance == 0.0)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -