mirror of
https://asciireactor.com/otho/cloudy-agn.git
synced 2024-12-05 01:45:08 +00:00
added magdziarz sed table
This commit is contained in:
parent
7e0e195433
commit
84f5d7b05f
@ -1,4 +1,4 @@
|
||||
x,sum,blackbody1,blackbody2,comptonization,excess
|
||||
index,total,blackbody_sum_1,blackbody_sum_2,comptonization,excess
|
||||
0.00100088,0.007052,0.00380963,0.00689602,0.00315011,0.000256716
|
||||
0.00100097,0.00705274,0.00381008,0.0068968,0.00315038,0.000256738
|
||||
0.00103176,0.00731913,0.00397244,0.00718025,0.00324849,0.000264733
|
||||
|
|
359
reference/magdziarz_sed.tab
Normal file
359
reference/magdziarz_sed.tab
Normal file
@ -0,0 +1,359 @@
|
||||
# hnu intensity EFe
|
||||
0.00100088 0.007052 nuFnu units kev extrapolate
|
||||
0.00100097 0.00705274
|
||||
0.00103176 0.00731913
|
||||
0.00103256 0.00732605
|
||||
0.00111537 0.00805117
|
||||
0.00116725 0.00851172
|
||||
0.00123692 0.00913732
|
||||
0.00124792 0.00921958
|
||||
0.0012767 0.00943475
|
||||
0.00133715 0.0098869
|
||||
0.00134899 0.00999022
|
||||
0.00138015 0.010263
|
||||
0.00142956 0.0106977
|
||||
0.00144129 0.0108138
|
||||
0.00147554 0.0111545
|
||||
0.00157539 0.0121622
|
||||
0.00157752 0.0121839
|
||||
0.00165242 0.0129539
|
||||
0.00168426 0.0131433
|
||||
0.00170542 0.0132686
|
||||
0.00172366 0.0133763
|
||||
0.00180616 0.0138603
|
||||
0.00182074 0.0139736
|
||||
0.00182336 0.0139939
|
||||
0.00188394 0.0144645
|
||||
0.00194938 0.014973
|
||||
0.00195252 0.0149974
|
||||
0.00201415 0.0155573
|
||||
0.00208746 0.0162273
|
||||
0.00212823 0.016548
|
||||
0.00217726 0.0169339
|
||||
0.00225661 0.0175585
|
||||
0.00232614 0.0182909
|
||||
0.00235596 0.0186074
|
||||
0.00241267 0.0192131
|
||||
0.0024869 0.0197252
|
||||
0.00257494 0.0203301
|
||||
0.00260806 0.0205569
|
||||
0.00271828 0.0214362
|
||||
0.00275059 0.0216941
|
||||
0.00278359 0.0219575
|
||||
0.00278819 0.0219942
|
||||
0.0029761 0.0234947
|
||||
0.00300638 0.0237366
|
||||
0.00301412 0.0237985
|
||||
0.00317707 0.0247704
|
||||
0.00321712 0.0250074
|
||||
0.00328608 0.025414
|
||||
0.00329455 0.0254638
|
||||
0.00347266 0.0266547
|
||||
0.00347766 0.026688
|
||||
0.00356136 0.0272448
|
||||
0.00359166 0.0274209
|
||||
0.00371801 0.0281512
|
||||
0.0037539 0.0283576
|
||||
0.00389271 0.0291513
|
||||
0.00392566 0.0293387
|
||||
0.00401911 0.0298682
|
||||
0.00425488 0.0311911
|
||||
0.00433873 0.0315796
|
||||
0.00465055 0.0330008
|
||||
0.00468931 0.0331557
|
||||
0.0050682 0.0346416
|
||||
0.00513968 0.0349164
|
||||
0.00519153 0.0350752
|
||||
0.00535758 0.035578
|
||||
0.0056743 0.0365138
|
||||
0.00568002 0.0365304
|
||||
0.00572662 0.0366824
|
||||
0.00572785 0.0366864
|
||||
0.00620222 0.0382001
|
||||
0.00620795 0.038218
|
||||
0.00626049 0.0382914
|
||||
0.00639785 0.0384808
|
||||
0.00670451 0.0388928
|
||||
0.00686 0.0390961
|
||||
0.006991 0.0391729
|
||||
0.00740968 0.03941
|
||||
0.00755458 0.0394893
|
||||
0.00766474 0.0395486
|
||||
0.00809872 0.0397752
|
||||
0.00817305 0.0398129
|
||||
0.00853198 0.0399908
|
||||
0.00856388 0.0400063
|
||||
0.00895053 0.0396539
|
||||
0.00903229 0.0395817
|
||||
0.00932098 0.0393329
|
||||
0.00956727 0.0391279
|
||||
0.0098915 0.0386924
|
||||
0.00998143 0.038575
|
||||
0.0100702 0.0384605
|
||||
0.0105699 0.0378401
|
||||
0.0107597 0.0376558
|
||||
0.0111523 0.0372876
|
||||
0.0119395 0.0365967
|
||||
0.0122009 0.0362427
|
||||
0.0125521 0.0357842
|
||||
0.0126301 0.0356848
|
||||
0.0131828 0.0350055
|
||||
0.0131902 0.0349968
|
||||
0.0132625 0.034911
|
||||
0.0138586 0.034229
|
||||
0.0139567 0.0341208
|
||||
0.0140848 0.0339812
|
||||
0.0145718 0.0334668
|
||||
0.015596 0.0324622
|
||||
0.0156321 0.0324285
|
||||
0.0160748 0.0320247
|
||||
0.0160817 0.0320185
|
||||
0.0160983 0.0320037
|
||||
0.0163348 0.0317426
|
||||
0.01688 0.0311625
|
||||
0.0169853 0.0310538
|
||||
0.0172348 0.0308004
|
||||
0.0177838 0.0302626
|
||||
0.0179674 0.0301689
|
||||
0.0181382 0.0300829
|
||||
0.0191648 0.029587
|
||||
0.0192434 0.0295504
|
||||
0.0192583 0.0295435
|
||||
0.0196673 0.0293566
|
||||
0.0198053 0.0292947
|
||||
0.0198666 0.0292674
|
||||
0.0200743 0.029187
|
||||
0.0204664 0.0290381
|
||||
0.0211505 0.0287866
|
||||
0.0212182 0.0287623
|
||||
0.021282 0.0287395
|
||||
0.0218565 0.0285377
|
||||
0.0219265 0.0285136
|
||||
0.0224095 0.0283497
|
||||
0.0224273 0.0283438
|
||||
0.0230797 0.0281296
|
||||
0.0233876 0.0280311
|
||||
0.0235174 0.0279901
|
||||
0.0238511 0.027886
|
||||
0.0241693 0.0277884
|
||||
0.0245202 0.0276827
|
||||
0.0246473 0.0276508
|
||||
0.0247007 0.0276375
|
||||
0.0247808 0.0276175
|
||||
0.0251891 0.0275171
|
||||
0.0257429 0.027384
|
||||
0.0262784 0.0272586
|
||||
0.0266034 0.027184
|
||||
0.0269317 0.0271097
|
||||
0.027091 0.0270741
|
||||
0.0276843 0.0270162
|
||||
0.0277765 0.0270073
|
||||
0.0287036 0.0269197
|
||||
0.0290112 0.0268913
|
||||
0.029649 0.0268335
|
||||
0.0302665 0.0267789
|
||||
0.0303009 0.0267758
|
||||
0.0312868 0.0266912
|
||||
0.0323326 0.0266045
|
||||
0.032679 0.0265764
|
||||
0.0333975 0.0265193
|
||||
0.0338141 0.0264868
|
||||
0.0341318 0.0264874
|
||||
0.034302 0.0264877
|
||||
0.0348507 0.0264888
|
||||
0.0356169 0.0264902
|
||||
0.0364 0.0264916
|
||||
0.0365228 0.0264918
|
||||
0.0367916 0.0264923
|
||||
0.0373626 0.0264933
|
||||
0.0376005 0.0264766
|
||||
0.0383259 0.0264266
|
||||
0.0388556 0.0263907
|
||||
0.0408055 0.0262632
|
||||
0.0417419 0.0262043
|
||||
0.0423533 0.0262053
|
||||
0.0455884 0.02621
|
||||
0.0466366 0.0262114
|
||||
0.0473258 0.0261734
|
||||
0.0509319 0.0259839
|
||||
0.052103 0.0259256
|
||||
0.052299 0.0259258
|
||||
0.0582127 0.0259326
|
||||
0.0584391 0.0259328
|
||||
0.0645773 0.0259391
|
||||
0.0649969 0.0259395
|
||||
0.0650387 0.0259396
|
||||
0.072159 0.0256743
|
||||
0.0726154 0.0256583
|
||||
0.0726621 0.0256567
|
||||
0.0802288 0.0256629
|
||||
0.0811825 0.0256636
|
||||
0.0896327 0.0256698
|
||||
0.0897019 0.0256699
|
||||
0.0952414 0.0255181
|
||||
0.100216 0.0253899
|
||||
0.106419 0.0253936
|
||||
0.111968 0.0253968
|
||||
0.11566 0.0253988
|
||||
0.117596 0.0253998
|
||||
0.125097 0.0254037
|
||||
0.129217 0.0254057
|
||||
0.131403 0.0254067
|
||||
0.139766 0.0254105
|
||||
0.144363 0.0253709
|
||||
0.145211 0.0253637
|
||||
0.159506 0.0252491
|
||||
0.162252 0.0252283
|
||||
0.174458 0.0251402
|
||||
0.17931 0.0251419
|
||||
0.190641 0.0251457
|
||||
0.198144 0.025148
|
||||
0.203554 0.0251497
|
||||
0.212995 0.0251525
|
||||
0.227403 0.0249717
|
||||
0.235337 0.0248775
|
||||
0.251257 0.0247169
|
||||
0.258632 0.0246462
|
||||
0.262922 0.0246062
|
||||
0.280695 0.0246101
|
||||
0.288984 0.0246118
|
||||
0.290513 0.0246122
|
||||
0.319352 0.0243828
|
||||
0.324565 0.0243437
|
||||
0.35291 0.0243487
|
||||
0.354229 0.0243489
|
||||
0.362623 0.0243503
|
||||
0.394326 0.0241492
|
||||
0.395733 0.0241407
|
||||
0.405127 0.0240848
|
||||
0.435763 0.0239117
|
||||
0.437224 0.0239038
|
||||
0.452614 0.0238221
|
||||
0.486924 0.0234372
|
||||
0.500068 0.0232984
|
||||
0.538092 0.0229587
|
||||
0.558659 0.0227868
|
||||
0.589519 0.0225153
|
||||
0.617232 0.0222859
|
||||
0.651244 0.0218881
|
||||
0.681917 0.0215524
|
||||
0.711468 0.0211866
|
||||
0.761749 0.0206107
|
||||
0.768691 0.020506
|
||||
0.841507 0.0194895
|
||||
0.919366 0.0184287
|
||||
0.927346 0.0183394
|
||||
1.00172 0.0175616
|
||||
1.01563 0.0174261
|
||||
1.03582 0.0171797
|
||||
1.07012 0.0167796
|
||||
1.09736 0.0164772
|
||||
1.15738 0.0159315
|
||||
1.19448 0.0156168
|
||||
1.19889 0.0155804
|
||||
1.26208 0.014984
|
||||
1.279 0.0148332
|
||||
1.30427 0.0146144
|
||||
1.30976 0.0145678
|
||||
1.36289 0.014182
|
||||
1.40838 0.0138712
|
||||
1.4134 0.0138379
|
||||
1.44683 0.0136213
|
||||
1.53704 0.0131101
|
||||
1.5807 0.0128799
|
||||
1.60612 0.012788
|
||||
1.65974 0.012601
|
||||
1.74628 0.0123169
|
||||
1.75202 0.0123088
|
||||
1.83077 0.0122008
|
||||
1.87102 0.0121477
|
||||
1.88625 0.012128
|
||||
1.95088 0.0120464
|
||||
1.97479 0.0119807
|
||||
2.04071 0.0118055
|
||||
2.08446 0.0116937
|
||||
2.08567 0.0116906
|
||||
2.15524 0.0115198
|
||||
2.17726 0.0115319
|
||||
2.24994 0.0115713
|
||||
2.2995 0.0115975
|
||||
2.32424 0.0116103
|
||||
2.40807 0.0116531
|
||||
2.66112 0.0120555
|
||||
2.97342 0.0123329
|
||||
3.28587 0.0127588
|
||||
3.67165 0.0131998
|
||||
4.0573 0.0135031
|
||||
4.53365 0.0139698
|
||||
5.01006 0.0144522
|
||||
5.59826 0.0149517
|
||||
6.18655 0.0154681
|
||||
6.91288 0.0160027
|
||||
7.6393 0.0165554
|
||||
8.53619 0.0171276
|
||||
9.4328 0.0175211
|
||||
10.4245 0.0183311
|
||||
11.6479 0.0187528
|
||||
12.8718 0.0194004
|
||||
14.3831 0.0200709
|
||||
15.8945 0.0207641
|
||||
17.7606 0.0214818
|
||||
19.6277 0.0224748
|
||||
21.9312 0.0229918
|
||||
24.2358 0.0237858
|
||||
27.0812 0.0246079
|
||||
29.9257 0.0251733
|
||||
33.4391 0.0260434
|
||||
36.9514 0.0266418
|
||||
41.2879 0.0272547
|
||||
46.1333 0.0278816
|
||||
50.9789 0.0285222
|
||||
56.9567 0.02853
|
||||
62.9365 0.0288594
|
||||
70.3165 0.0288672
|
||||
78.5585 0.0285523
|
||||
86.7913 0.0276126
|
||||
95.8829 0.0264055
|
||||
105.927 0.0252511
|
||||
115.727 0.0238767
|
||||
126.424 0.0220755
|
||||
136.586 0.0204095
|
||||
145.938 0.0188688
|
||||
155.931 0.0174444
|
||||
164.756 0.0157687
|
||||
174.088 0.014415
|
||||
183.941 0.0130303
|
||||
192.209 0.0117783
|
||||
200.839 0.0105276
|
||||
209.866 0.00951609
|
||||
219.299 0.00860174
|
||||
226.629 0.00777504
|
||||
234.194 0.00694927
|
||||
242.022 0.00628138
|
||||
250.101 0.00561425
|
||||
258.449 0.00501797
|
||||
267.088 0.0045357
|
||||
272.959 0.00405386
|
||||
282.083 0.00366425
|
||||
288.285 0.00327499
|
||||
297.908 0.00292716
|
||||
304.457 0.0026162
|
||||
311.164 0.0023647
|
||||
318.005 0.00211349
|
||||
324.997 0.00188897
|
||||
332.142 0.0016883
|
||||
339.458 0.001526
|
||||
346.922 0.00136389
|
||||
350.639 0.00121896
|
||||
358.348 0.00108947
|
||||
366.226 0.000973734
|
||||
374.278 0.000870292
|
||||
378.289 0.000777818
|
||||
386.622 0.000703044
|
||||
395.122 0.000628358
|
||||
399.356 0.000561591
|
||||
408.136 0.000501931
|
||||
412.51 0.000448598
|
||||
421.579 0.000400942
|
||||
***************
|
||||
this was extracted from the 1998 Magdziarz paper
|
@ -1,191 +0,0 @@
|
||||
#include "agn.hpp"
|
||||
|
||||
|
||||
|
||||
int main(int argc, char const *argv[])
|
||||
{
|
||||
|
||||
std::cout
|
||||
<< "Setting up environment.\n";
|
||||
|
||||
bool debug=true;
|
||||
|
||||
// Create 2d table using n bins, linear values of SED. The
|
||||
// agn em source class has a function for this. A
|
||||
// std::map<double,double> represents the table.
|
||||
int n = 1000;
|
||||
agn::sed_table SED;
|
||||
|
||||
const char* table_filename = "agn_source_table";
|
||||
const char* debug_filename = "agn_source_debug";
|
||||
const char* cloudyscript_filename = "agn_source_cloudyscript";
|
||||
|
||||
std::ofstream table_file( table_filename,
|
||||
std::ofstream::out
|
||||
);
|
||||
std::ofstream debug_file( debug_filename,
|
||||
std::ofstream::out
|
||||
);
|
||||
std::ofstream cloudyscript_file(cloudyscript_filename,
|
||||
std::ofstream::out
|
||||
);
|
||||
|
||||
if(debug) std::cout
|
||||
<< "Debug mode.\n";
|
||||
|
||||
|
||||
std::cout
|
||||
<< "Creating agn sed object.\n";
|
||||
|
||||
// agn em source spectrum arguments
|
||||
double T=4e6,
|
||||
alpha_ox = -1.20,
|
||||
alpha_x = -0.670,
|
||||
alpha_uv = -1.30,
|
||||
cutoff_uv_rydberg = .25,
|
||||
cutoff_xray_rydberg = .1,
|
||||
log_radius_in_cm=16.7272;;
|
||||
|
||||
agn::sed_pow_law agnsource(
|
||||
T,
|
||||
alpha_ox,
|
||||
alpha_x,
|
||||
alpha_uv,
|
||||
cutoff_uv_rydberg,
|
||||
cutoff_xray_rydberg,
|
||||
log_radius_in_cm
|
||||
);
|
||||
|
||||
if(debug) debug_file
|
||||
<< "cutoff_uv_eV: "
|
||||
<< agnsource._cutoff_uv_eV
|
||||
<< "\n"
|
||||
<< "cutoff_xray_eV: "
|
||||
<< agnsource._cutoff_xray_eV
|
||||
<< "\n"
|
||||
<< "xray coefficient: "
|
||||
<< agnsource._xray_coefficient
|
||||
<< "\n\n";
|
||||
|
||||
|
||||
|
||||
std::cout
|
||||
<< "Evaluating relative spectral intensity for "
|
||||
<< n
|
||||
<< " photon energy bins.\n";
|
||||
|
||||
SED = agnsource.histogram_table(n);
|
||||
|
||||
std::cout
|
||||
<< "Printing SED table to file "
|
||||
<< table_filename
|
||||
<< "\n";
|
||||
|
||||
table_file << agn::format_sed_table(SED);
|
||||
|
||||
std::cout
|
||||
<< "Printing CLOUDY interpolate command syntax to file "
|
||||
<< cloudyscript_filename
|
||||
<< "\n";
|
||||
|
||||
cloudyscript_file << agn::cloudy_interpolate_str(SED);
|
||||
|
||||
std::cout
|
||||
<< "Closing files. Goodbye.\n";
|
||||
|
||||
debug_file.close();
|
||||
cloudyscript_file.close();
|
||||
table_file.close();
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
double agn::hnu_at(int i,int n) {
|
||||
double relative_coord=(double)(i)/n;
|
||||
double x_coord = relative_coord*CONT_WIDTH_X + CONT_MIN_X;
|
||||
return pow(10,x_coord);
|
||||
}
|
||||
|
||||
agn::sed_table agn::sed_pow_law::histogram_table(int n){
|
||||
agn::sed_table output;
|
||||
double max=0,min=1,hnu;
|
||||
for(int i=0; i<n; i++) {
|
||||
hnu = hnu_at(i,n);
|
||||
output.value[hnu] = this->sed(hnu);
|
||||
if (output.value[hnu] > max) max = output.value[hnu];
|
||||
if (output.value[hnu] < min) min = output.value[hnu];
|
||||
}
|
||||
// Add a final point at 100 KeV
|
||||
hnu = 1e5;
|
||||
output.value[hnu] = this->sed(hnu);
|
||||
return output;
|
||||
}
|
||||
|
||||
double agn::sed_pow_law::sed(double hnu) {
|
||||
double magnitude=0.0;
|
||||
magnitude += this->eval_uv(hnu);
|
||||
magnitude += this->eval_xray(hnu);
|
||||
if (magnitude < agn::CONT_MIN_VAL) return agn::CONT_MIN_VAL;
|
||||
return magnitude;
|
||||
}
|
||||
double agn::sed_pow_law::eval_uv(double hnu) {
|
||||
double bigbump_kT = _T
|
||||
* agn::BOLTZMANN_CONST;
|
||||
double magnitude = pow(hnu,(1+_alpha_uv))
|
||||
* exp(-(hnu)/bigbump_kT)
|
||||
* exp(-(_cutoff_uv_eV/hnu))
|
||||
* _scaling_factor;
|
||||
if (magnitude < agn::CONT_MIN_VAL) return agn::CONT_MIN_VAL;
|
||||
return magnitude;
|
||||
}
|
||||
double agn::sed_pow_law::eval_xray(double hnu) {
|
||||
return _xray_coefficient
|
||||
* pow(hnu/2000,1+_alpha_x)
|
||||
* exp(-_cutoff_xray_eV/hnu)
|
||||
* _scaling_factor;
|
||||
}
|
||||
|
||||
double agn::sed_pow_law::SED_at_2KeV() {
|
||||
double ELe_at_2500A_no_scale = eval_uv(IN_EV_2500A)
|
||||
/ _scaling_factor;
|
||||
double energy_ratio = 2000/IN_EV_2500A;
|
||||
// Returns EL[e] at 2 KeV
|
||||
return ELe_at_2500A_no_scale
|
||||
* pow(energy_ratio,_alpha_ox + 1);
|
||||
}
|
||||
|
||||
agn::sed_pow_law::sed_pow_law (
|
||||
double T,
|
||||
double alpha_ox,
|
||||
double alpha_x,
|
||||
double alpha_uv,
|
||||
double cutoff_uv_rydberg,
|
||||
double cutoff_xray_rydberg,
|
||||
double log_radius_in_cm,
|
||||
double scaling_factor
|
||||
):
|
||||
_T(T),
|
||||
_alpha_ox(alpha_ox),
|
||||
_alpha_x(alpha_x),
|
||||
_alpha_uv(alpha_uv),
|
||||
_cutoff_uv_rydberg(cutoff_uv_rydberg),
|
||||
_cutoff_xray_rydberg(cutoff_xray_rydberg),
|
||||
_log_radius_in_cm(log_radius_in_cm),
|
||||
_scaling_factor(scaling_factor)
|
||||
{
|
||||
_cutoff_uv_eV = cutoff_uv_rydberg*RYDBERG_UNIT_EV;
|
||||
_cutoff_xray_eV = cutoff_xray_rydberg*RYDBERG_UNIT_EV;
|
||||
_radius_in_cm = pow(10,log_radius_in_cm);
|
||||
_radius_in_cm_squared = _radius_in_cm*_radius_in_cm;
|
||||
_xray_coefficient = agn::sed_pow_law::SED_at_2KeV();
|
||||
}
|
@ -1,116 +0,0 @@
|
||||
""" A program to recreate the average spectrum fit for ngc 5548 in Magdziarz et al 1998 """
|
||||
import math
|
||||
import scipy
|
||||
import numpy
|
||||
|
||||
PI=3.14159265358979323846;
|
||||
PLANCK_CONST=4.135668e-15; # in eV * s
|
||||
BOLTZMANN_CONST=0.00008617332385; # in eV / K
|
||||
RYDBERG_CONST=1.0973731568539e7; # in 1 / m
|
||||
RYDBERG_UNIT_EV=13.60569252; # in eV
|
||||
RYDBERG_UNIT_ANGSTROM=1e10/RYDBERG_CONST; # in A
|
||||
|
||||
CONT_MIN_ENERGY_keV = 1e-3;
|
||||
CONT_MAX_ENERGY_keV = 1e2;
|
||||
CONT_MIN_X = math.log10(CONT_MIN_ENERGY_keV);
|
||||
CONT_MAX_X = math.log10(CONT_MAX_ENERGY_keV);
|
||||
CONT_WIDTH_X = CONT_MAX_X - CONT_MIN_X;
|
||||
CONT_MIN_VAL = 1e-35;
|
||||
|
||||
""" Cloudy's continuum domain, for reference, version 13.3 """
|
||||
CLOUDY_EMM = 1.001e-8; # in Rydberg
|
||||
CLOUDY_EGAMRY = 7.354e6; # in Rydberg
|
||||
CLOUDY_MIN_EV = CLOUDY_EMM*RYDBERG_UNIT_EV;
|
||||
CLOUDY_MAX_EV = CLOUDY_EGAMRY*RYDBERG_UNIT_EV;
|
||||
|
||||
IN_EV_2500A = 12398.41929/2500;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
""" Curve Parameters from MNRAS 301 Mdagziarz 1998 """
|
||||
|
||||
|
||||
α_HC = 0.86
|
||||
|
||||
|
||||
# Soft Excess
|
||||
α_SE_sec2_1 = 1.1 # Quoted consistent with Korista 1995 and Marshall 1997
|
||||
kT_SE_sec2_1 = .56
|
||||
|
||||
|
||||
# Comtonization fitted to ROSAT data
|
||||
# ξ =
|
||||
|
||||
# OSSE data fit
|
||||
α_HC = 0.86
|
||||
R = 0.96
|
||||
E_cutoff_HC = .120 # keV, phase 1
|
||||
F_HC = .38 # keV cm⁻² s⁻¹
|
||||
# E_cutoff_HC = 118 # keV, phase 3
|
||||
# F_HC = .61 # keV cm⁻² s⁻¹
|
||||
|
||||
|
||||
# Section 3.3 values
|
||||
kT_SE_sec3_2 = .270 # keV
|
||||
α_SE_sec3_2 = 1.13
|
||||
kT_HC_sec3_2 = 55 # keV
|
||||
α_HC_sec3_2 = .76
|
||||
|
||||
|
||||
|
||||
def hν_at(i,n):
|
||||
""" returns hν coordinate of bin i out of n """
|
||||
relative_coord = i/n
|
||||
x_coord = relative_coord*CONT_WIDTH_X + CONT_MIN_X;
|
||||
return math.pow(10,x_coord);
|
||||
|
||||
def histogram_table(n):
|
||||
output = []
|
||||
# max=0,min=1
|
||||
indices = range(n)
|
||||
for i in range(0,n):
|
||||
hν = hν_at(i,n);
|
||||
value = (hν,sed(hν))
|
||||
# if (output.value[hν] > max) max = output.value[hν];
|
||||
# if (output.value[hν] < min) min = output.value[hν];
|
||||
output.append(value)
|
||||
|
||||
# Add a final point at 100 KeV
|
||||
hν = 1e2;
|
||||
value = sed(hν);
|
||||
output.append((hν,value))
|
||||
return output;
|
||||
|
||||
def sed(hν):
|
||||
magnitude=0.0;
|
||||
magnitude += powlaw_cutoff(hν,α_HC,E_cutoff_HC,1) # OSSE data fit
|
||||
# magnitude += powlaw_cutoff(hν,α_SE_sec2_1,kT_SE_sec2_1,1)
|
||||
# magnitude += powlaw_cutoff(hν,α_SE_sec3_2,kT_SE_sec3_2,1)
|
||||
#magnitude += compt_approx(hν,-1.3,.345,.0034,1)
|
||||
if magnitude < CONT_MIN_VAL: return CONT_MIN_VAL
|
||||
# magnitude = CONT_MIN_VAL;
|
||||
return magnitude;
|
||||
|
||||
def powlaw_cutoff(hν,α,E_cutoff,norm):
|
||||
low_cutoff = .1
|
||||
resultant = norm
|
||||
resultant *= math.exp(-hν/E_cutoff)
|
||||
#resultant *= math.exp(-low_cutoff/hν)
|
||||
resultant *= math.pow(hν,1+α)
|
||||
return resultant
|
||||
|
||||
def compt_approx(hν,α,kT_keV,cutoff_keV,norm):
|
||||
magnitude = math.pow(hν,(1+α))
|
||||
magnitude *= math.exp(-(hν/kT_keV))
|
||||
magnitude *= math.exp(-(cutoff_keV/hν))
|
||||
magnitude *= norm
|
||||
return magnitude
|
||||
|
||||
test_table = histogram_table(500)
|
||||
|
||||
for pair in test_table:
|
||||
print (pair[0],pair[1])
|
@ -1,72 +0,0 @@
|
||||
#!/usr/local/bin/perl
|
||||
|
||||
use strict; use warnings; use 5.010; use utf8;
|
||||
use IO::Handle;
|
||||
use File::Temp "tempfile";
|
||||
|
||||
open(my $spectrum_file,"spectrum");
|
||||
|
||||
# my @x = ();
|
||||
# my @y = ();
|
||||
# my($xi,$yi);
|
||||
# ($xi,$yi)=(0,0);
|
||||
|
||||
# while(my $line = <$spectrum_file>) {
|
||||
# $line =~ /([0-9\.]+)\s+([0-9\.]+)/;
|
||||
# ($x[$xi],$y[$yi])=($1,$2);
|
||||
# $xi++; $yi++;
|
||||
# }
|
||||
|
||||
# while (my $line = <$spectrum_file>) {
|
||||
# print $line;
|
||||
# }
|
||||
|
||||
my($T,$N) = tempfile("spectrum-XXXXXXXX", "UNLINK", 1);
|
||||
# for my $t (100..500)
|
||||
# { say $T $t*sin($t*0.1), " ", $t*cos($t*0.1); }
|
||||
while (my $_ = <$spectrum_file>) {
|
||||
chomp;
|
||||
say $T $_;
|
||||
}
|
||||
close $T;
|
||||
open my $P, "|-", "gnuplot" or die;
|
||||
printflush $P qq[
|
||||
unset key
|
||||
set logscale xy
|
||||
set xrange [.001,1000]
|
||||
plot "$N"
|
||||
];
|
||||
<STDIN>;
|
||||
close $P;
|
||||
|
||||
|
||||
# sub histogram_table(n) {
|
||||
# my @output = ()
|
||||
# my @x = ()
|
||||
# my @y = ()
|
||||
# output.append(x)
|
||||
# output.append(y)
|
||||
# max=0
|
||||
# min=1
|
||||
# indices = range(n)
|
||||
# for i in range(0,n):
|
||||
# hνᗉkeVᗆ = hνᗉkeVᗆ_at(i,n);
|
||||
# x.append(hνᗉkeVᗆ)
|
||||
# value = total(hνᗉkeVᗆ,1,1,1)
|
||||
# y.append(value)
|
||||
# if (value > max): max = value;
|
||||
# if (value < min): min = value;
|
||||
# # Add a final point at 100 KeV
|
||||
# hνᗉkeVᗆ = 1e2;
|
||||
# x.append(hνᗉkeVᗆ)
|
||||
# y.append(total(hνᗉkeVᗆ,1,1,1))
|
||||
# output.append(x)
|
||||
# output.append(y)
|
||||
# return output;
|
||||
# }
|
||||
|
||||
|
||||
|
||||
|
||||
close($spectrum_file)
|
||||
__END__
|
@ -1,139 +0,0 @@
|
||||
""" A program to recreate the average spectrum fit for ngc 5548 in Magdziarz et al 1998 """
|
||||
import math
|
||||
import scipy
|
||||
import numpy
|
||||
|
||||
import matplotlib.pyplot as plt
|
||||
|
||||
PI=3.14159265358979323846;
|
||||
PLANCK_CONST=4.135668e-15; # in eV * s
|
||||
# Boltzman Constant
|
||||
kᵦᗉeVᓯKᗆ=0.00008617332385; # in eV / K
|
||||
kᵦᗉkeVᓯKᗆ=kᵦᗉeVᓯKᗆ/1000;
|
||||
RYDBERG_CONST=1.0973731568539e7; # in 1 / m
|
||||
RYDBERG_UNITᗉeVᗆ=13.60569252; # in eV
|
||||
RYDBERG_UNIT_ANGSTROM=1e10/RYDBERG_CONST; # in A
|
||||
|
||||
CONT_MIN_ENERGYᗉkeVᗆ = 1e-3;
|
||||
CONT_MAX_ENERGYᗉkeVᗆ = 1e2;
|
||||
CONT_MIN_XᗉkeVᗆ = math.log10(CONT_MIN_ENERGYᗉkeVᗆ);
|
||||
CONT_MAX_XᗉkeVᗆ = math.log10(CONT_MAX_ENERGYᗉkeVᗆ);
|
||||
CONT_WIDTH_XᗉkeVᗆ = CONT_MAX_XᗉkeVᗆ - CONT_MIN_XᗉkeVᗆ;
|
||||
CONT_MIN_VAL = 1e-35;
|
||||
|
||||
""" Cloudy's continuum domain, for reference, version 13.3 """
|
||||
CLOUDY_EMMᗉRydbergᗆ = 1.001e-8; # in Rydberg
|
||||
CLOUDY_EγᗉRydbergᗆ = 7.354e6; # in Rydberg
|
||||
CLOUDY_MINᗉeVᗆ= CLOUDY_EMMᗉRydbergᗆ*RYDBERG_UNITᗉeVᗆ;
|
||||
CLOUDY_MAXᗉeVᗆ= CLOUDY_EγᗉRydbergᗆ*RYDBERG_UNITᗉeVᗆ;
|
||||
|
||||
hcᓯ2500ᗉeVᗆ = 12398.41929/2500;
|
||||
|
||||
""" Returns the SED as a histrogram (list of floats) with n bins"""
|
||||
# def histogram_table(n):
|
||||
# output = []
|
||||
# # max=0,min=1
|
||||
# indices = range(n)
|
||||
# for i in range(0,n):
|
||||
# hνᗉkeVᗆ = hνᗉkeVᗆ_at(i,n);
|
||||
# value = (hνᗉkeVᗆ,sum(hνᗉkeVᗆ))
|
||||
# # if (output.value[hνᗉkeVᗆ] > max) max = output.value[hνᗉkeVᗆ];
|
||||
# # if (output.value[hνᗉkeVᗆ] < min) min = output.value[hνᗉkeVᗆ];
|
||||
# output.append(value)
|
||||
#
|
||||
# # Add a final point at 100 KeV
|
||||
# hνᗉkeVᗆ = 1e2;
|
||||
# value = sum(hνᗉkeVᗆ);
|
||||
# output.append((hνᗉkeVᗆ,value))
|
||||
# return output;
|
||||
|
||||
def histogram_table(n):
|
||||
output = []
|
||||
x = []
|
||||
y = []
|
||||
output.append(x)
|
||||
output.append(y)
|
||||
max=0
|
||||
min=1
|
||||
indices = range(n)
|
||||
for i in range(0,n):
|
||||
hνᗉkeVᗆ = hνᗉkeVᗆ_at(i,n);
|
||||
x.append(hνᗉkeVᗆ)
|
||||
value = total(hνᗉkeVᗆ,1,1,1)
|
||||
y.append(value)
|
||||
if (value > max): max = value;
|
||||
if (value < min): min = value;
|
||||
# Add a final point at 100 KeV
|
||||
hνᗉkeVᗆ = 1e2;
|
||||
x.append(hνᗉkeVᗆ)
|
||||
y.append(total(hνᗉkeVᗆ,1,1,1))
|
||||
output.append(x)
|
||||
output.append(y)
|
||||
return output;
|
||||
|
||||
|
||||
# Sums 2 power-law cutoff functions and the disk contribution at energy coordinate hνᗉkeVᗆ in keV.
|
||||
# Coefficients should be equal to functions at hνᗉkeVᗆ = ?? keV
|
||||
def total(hνᗉkeVᗆ,C1=1.0,C2=1.0,C3=1.0):
|
||||
magnitude=0.0
|
||||
# accretion disk blackbody continuum has α=1/3
|
||||
magnitude += powlaw_cutoff(hνᗉkeVᗆ,1/3,3e3,6e6,C1)
|
||||
magnitude += powlaw_cutoff(hνᗉkeVᗆ,-1.1,.01/kᵦᗉkeVᓯKᗆ,1/kᵦᗉkeVᓯKᗆ,C2)
|
||||
magnitude += powlaw_cutoff(hνᗉkeVᗆ,-0.8,.01/kᵦᗉkeVᓯKᗆ,100/kᵦᗉkeVᓯKᗆ,C3)
|
||||
if magnitude < CONT_MIN_VAL: return CONT_MIN_VAL
|
||||
# print (magnitude)
|
||||
return magnitude;
|
||||
|
||||
|
||||
def hνᗉkeVᗆ_at(i,n):
|
||||
""" returns hνᗉkeVᗆ coordinate in keV of bin i out of n """
|
||||
relative_coord = i/n
|
||||
hν = relative_coord*CONT_WIDTH_XᗉkeVᗆ + CONT_MIN_XᗉkeVᗆ
|
||||
return math.pow(10,hν)
|
||||
|
||||
|
||||
|
||||
|
||||
def powlaw_cutoff(hνᗉkeVᗆ,α,T1,T2,coefficient):
|
||||
resultant = coefficient
|
||||
resultant *= math.exp(-hνᗉkeVᗆ/(kᵦᗉkeVᓯKᗆ*T1))
|
||||
resultant *= math.exp(-kᵦᗉkeVᓯKᗆ*T2/hνᗉkeVᗆ)
|
||||
resultant *= math.pow(hνᗉkeVᗆ,1+α)
|
||||
#print(math.exp(-hνᗉkeVᗆ/(kᵦᗉkeVᓯKᗆ*T1)))
|
||||
#print(-hνᗉkeVᗆ/(kᵦᗉkeVᓯKᗆ*T1))
|
||||
#print(math.exp(-kᵦᗉkeVᓯKᗆ*T2/hνᗉkeVᗆ))
|
||||
#print(math.pow(hνᗉkeVᗆ,1+α))
|
||||
#print(resultant)
|
||||
#print("──────────────────────────────────────────────────────────────────────────")
|
||||
return resultant
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
test_table = histogram_table(500)
|
||||
|
||||
fig = plt.figure()
|
||||
sed_plot = fig.add_subplot(111)
|
||||
sed_plot.set_xscale("log")
|
||||
sed_plot.set_yscale("log")
|
||||
sed_plot.set_xlim(CONT_MIN_XᗉkeVᗆ,CONT_MAX_XᗉkeVᗆ)
|
||||
sed_plot.set_ylim(1e-1,1e2)
|
||||
sed_plot.set_aspect(1)
|
||||
sed_plot.set_title("log-log plot of SED")
|
||||
|
||||
sed_plot.plot(test_table[0],test_table[1])
|
||||
|
||||
fig.show()
|
||||
|
||||
#for pair in test_table:
|
||||
# print (pair[0],pair[1])
|
||||
|
||||
|
||||
# index=0
|
||||
# for energy in test_table[0]:
|
||||
# print (energy,test_table[1][index])
|
||||
# index += 1
|
||||
|
||||
|
219
src/sed/sed.hpp
219
src/sed/sed.hpp
@ -1,219 +0,0 @@
|
||||
#ifndef sed_hpp
|
||||
#define sed_hpp
|
||||
|
||||
|
||||
|
||||
#include "agn.hpp"
|
||||
|
||||
namespace agn {
|
||||
|
||||
// Continuum domain, step size constant in log space
|
||||
``const double CONT_MIN_ENERGY=1e-2; // eV
|
||||
const double CONT_MAX_ENERGY=1e5; // eV
|
||||
const double CONT_MIN_X=log10(CONT_MIN_ENERGY);
|
||||
const double CONT_MAX_X=log10(CONT_MAX_ENERGY);
|
||||
const double CONT_WIDTH_X=CONT_MAX_X - CONT_MIN_X;
|
||||
const double CONT_MIN_VAL=1e-35;
|
||||
|
||||
// Cloudy's continuum domain, for reference, version 13.3
|
||||
const double CLOUDY_EMM = 1.001e-8; // in Rydberg
|
||||
const double CLOUDY_EGAMRY = 7.354e6; // in Rydberg
|
||||
const double CLOUDY_MIN_EV=CLOUDY_EMM*RYDBERG_UNIT_EV;
|
||||
const double CLOUDY_MAX_EV=CLOUDY_EGAMRY*RYDBERG_UNIT_EV;
|
||||
|
||||
const double IN_EV_2500A=12398.41929/2500;
|
||||
|
||||
|
||||
|
||||
// SEDs are represented by 2d histogram tables.
|
||||
struct sed_table {
|
||||
std::string header;
|
||||
table_1d value;
|
||||
};
|
||||
|
||||
class sed_pow_law {
|
||||
public:
|
||||
// Continuum output functions
|
||||
// Returns histogram with n bins evenly space in log space
|
||||
sed_table histogram_table(int n);
|
||||
|
||||
// Argument is photon energy in eV
|
||||
double sed(double hnu);
|
||||
double eval_uv(double hnu);
|
||||
double eval_xray(double hnu);
|
||||
|
||||
// Determined differently to be of use as the
|
||||
// xray coefficient.
|
||||
double SED_at_2KeV();
|
||||
|
||||
// Continuum shape arguments
|
||||
double _T; //TCut
|
||||
double _alpha_ox;
|
||||
double _alpha_x;
|
||||
double _alpha_uv;
|
||||
double _cutoff_uv_rydberg;
|
||||
double _cutoff_xray_rydberg;
|
||||
double _log_radius_in_cm;
|
||||
|
||||
// Derived values
|
||||
double _cutoff_uv_eV; // IRCut
|
||||
double _cutoff_xray_eV; // lowend_cutoff
|
||||
double _radius_in_cm;
|
||||
double _radius_in_cm_squared;
|
||||
double _scaling_factor;
|
||||
double _xray_coefficient;
|
||||
|
||||
sed_pow_law (
|
||||
double T,
|
||||
double alpha_ox,
|
||||
double alpha_x,
|
||||
double alpha_uv,
|
||||
double cutoff_uv_rydberg,
|
||||
double cutoff_xray_rydberg,
|
||||
double log_radius_in_cm,
|
||||
double scaling_factor = 1.0
|
||||
|
||||
// EL[e] model scaling factor
|
||||
// double scaling_factor = 1.39666E44
|
||||
);
|
||||
};
|
||||
|
||||
// Returns coord in eV for given relative coord.
|
||||
double hnu_at(int i,int n);
|
||||
|
||||
// Takes an SED table as input and returns a string with format:
|
||||
// '<h*nu>\t<flux>\n' for each energy-flux pair
|
||||
std::string format_sed_table(sed_table table);
|
||||
|
||||
// Read continuum from file with '<h*nu>\t<flux>\n' formatting.
|
||||
// Will ignore up to 1 header.
|
||||
sed_table read_sed_table(std::ifstream& table_file);
|
||||
|
||||
// Does the same but converts hnu from rydberg to eV.
|
||||
sed_table read_and_convert_sed_table(std::ifstream& table_file);
|
||||
|
||||
// Cloudy takes the SED density as input. This function outputs
|
||||
// the corresponding SED table's SED density function in the form
|
||||
// of a cloudy input script "interpolate" command.
|
||||
std::string cloudy_interpolate_str(sed_table SED);
|
||||
|
||||
} // end namespace agn
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
agn::sed_table agn::read_sed_table(std::ifstream& table_file) {
|
||||
sed_table resultant;
|
||||
std::string scratch;
|
||||
int current_line=0;
|
||||
double hnu;
|
||||
std::getline(table_file,scratch);
|
||||
if(!isdigit(scratch[0])) {
|
||||
resultant.header = scratch;
|
||||
current_line++;
|
||||
}
|
||||
while(!table_file.eof()) {
|
||||
table_file >> hnu;
|
||||
table_file >> resultant.value[hnu];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
agn::sed_table agn::read_and_convert_sed_table(std::ifstream& table_file) {
|
||||
sed_table resultant;
|
||||
std::string scratch;
|
||||
int current_line=0;
|
||||
double hnu_in_ryd,hnu_in_ev,value;
|
||||
std::getline(table_file,scratch);
|
||||
if(!isdigit(scratch[0])) {
|
||||
resultant.header = scratch;
|
||||
current_line++;
|
||||
}
|
||||
int c=0;
|
||||
while(!table_file.eof()) {
|
||||
//std::cout << c;
|
||||
table_file >> hnu_in_ryd;
|
||||
hnu_in_ev = hnu_in_ryd*agn::RYDBERG_UNIT_EV;
|
||||
table_file >> resultant.value[hnu_in_ev];
|
||||
getline(table_file,scratch);
|
||||
}
|
||||
}
|
||||
|
||||
std::string agn::format_sed_table(agn::sed_table table) {
|
||||
std::stringstream output;
|
||||
if (!table.header.empty()) output << table.header;
|
||||
output << std::setprecision(5);
|
||||
agn::table2d::iterator table_iterator;
|
||||
table_iterator=table.value.begin();
|
||||
while(table_iterator != table.value.end()) {
|
||||
output
|
||||
<< std::fixed
|
||||
<< table_iterator->first
|
||||
<< "\t"
|
||||
<< std::scientific
|
||||
<< table_iterator->second
|
||||
<< "\n";
|
||||
table_iterator++;
|
||||
}
|
||||
return output.str();
|
||||
}
|
||||
|
||||
std::string agn::cloudy_interpolate_str(agn::sed_table table) {
|
||||
std::stringstream output;
|
||||
agn::table2d::iterator table_iterator = table.value.begin();
|
||||
// Lead in to uv bump at slope=2 in log(energy [rydberg]) space
|
||||
double energy_in_rydbergs = table_iterator->first
|
||||
/ agn::RYDBERG_UNIT_EV;
|
||||
double log_uv_bump_start = log10( energy_in_rydbergs );
|
||||
double log_lowest_value = log10(table_iterator->second
|
||||
/ table_iterator->first);
|
||||
double log_min_energy = log10(agn::CLOUDY_EMM)
|
||||
- 1;
|
||||
double log_SED_density = log_lowest_value
|
||||
- 2*(log_uv_bump_start
|
||||
- log_min_energy);
|
||||
if ( log_SED_density < 1e-36 ) log_SED_density = 1e-36;
|
||||
output
|
||||
<< "interpolate ("
|
||||
<< pow(10,log_min_energy)
|
||||
<< " "
|
||||
<< log_SED_density
|
||||
<< ")";
|
||||
int count=0;
|
||||
|
||||
while(table_iterator != table.value.end()) {
|
||||
energy_in_rydbergs = table_iterator->first
|
||||
/ agn::RYDBERG_UNIT_EV;
|
||||
double log_SED_density = log10( table_iterator->second
|
||||
/ table_iterator->first);
|
||||
if ((count%5)==0) output << "\n" << "continue ";
|
||||
else output << " ";
|
||||
output
|
||||
<< "("
|
||||
<< energy_in_rydbergs
|
||||
<< " "
|
||||
<< log_SED_density
|
||||
<< ")";
|
||||
count++;
|
||||
table_iterator++;
|
||||
}
|
||||
// Trail off at slope=-2 in log(energy [rydberg]) space
|
||||
while ( energy_in_rydbergs < agn::CLOUDY_EGAMRY ) {
|
||||
double log_energy = log10(energy_in_rydbergs);
|
||||
energy_in_rydbergs = pow(10,log_energy+1);
|
||||
log_SED_density -= 2;
|
||||
output
|
||||
<< "("
|
||||
<< energy_in_rydbergs
|
||||
<< " "
|
||||
<< log_SED_density
|
||||
<< ")";
|
||||
}
|
||||
return output.str();
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif
|
501
src/sed/spectrum
501
src/sed/spectrum
@ -1,501 +0,0 @@
|
||||
0.001 1e-35
|
||||
0.0010232929922807535 1e-35
|
||||
0.0010471285480508996 1e-35
|
||||
0.001071519305237606 1e-35
|
||||
0.0010964781961431851 1e-35
|
||||
0.001122018454301963 1e-35
|
||||
0.0011481536214968829 1e-35
|
||||
0.001174897554939529 1e-35
|
||||
0.001202264434617413 1e-35
|
||||
0.0012302687708123812 1e-35
|
||||
0.0012589254117941675 1e-35
|
||||
0.0012882495516931337 1e-35
|
||||
0.0013182567385564075 1e-35
|
||||
0.0013489628825916532 1e-35
|
||||
0.0013803842646028853 1e-35
|
||||
0.001412537544622754 1e-35
|
||||
0.001445439770745928 1e-35
|
||||
0.0014791083881682072 1e-35
|
||||
0.0015135612484362087 1e-35
|
||||
0.0015488166189124811 1e-35
|
||||
0.001584893192461114 1e-35
|
||||
0.0016218100973589297 1e-35
|
||||
0.0016595869074375598 1e-35
|
||||
0.0016982436524617442 1e-35
|
||||
0.0017378008287493763 1e-35
|
||||
0.0017782794100389228 1e-35
|
||||
0.0018197008586099826 1e-35
|
||||
0.0018620871366628676 1e-35
|
||||
0.0019054607179632482 1e-35
|
||||
0.0019498445997580456 1e-35
|
||||
0.001995262314968879 1e-35
|
||||
0.0020417379446695297 1e-35
|
||||
0.0020892961308540386 1e-35
|
||||
0.0021379620895022326 1e-35
|
||||
0.002187761623949552 1e-35
|
||||
0.00223872113856834 1e-35
|
||||
0.0022908676527677724 1e-35
|
||||
0.0023442288153199225 1e-35
|
||||
0.00239883291901949 1e-35
|
||||
0.002454708915685031 1e-35
|
||||
0.0025118864315095794 1e-35
|
||||
0.0025703957827688645 1e-35
|
||||
0.0026302679918953813 1e-35
|
||||
0.002691534803926914 1e-35
|
||||
0.002754228703338166 1e-35
|
||||
0.002818382931264455 1e-35
|
||||
0.0028840315031266055 1e-35
|
||||
0.0029512092266663842 1e-35
|
||||
0.003019951720402016 1e-35
|
||||
0.003090295432513592 1e-35
|
||||
0.0031622776601683794 1e-35
|
||||
0.003235936569296281 1e-35
|
||||
0.003311311214825911 1e-35
|
||||
0.0033884415613920273 1e-35
|
||||
0.0034673685045253167 1e-35
|
||||
0.0035481338923357532 1e-35
|
||||
0.003630780547701014 1e-35
|
||||
0.003715352290971728 1e-35
|
||||
0.0038018939632056127 1e-35
|
||||
0.003890451449942805 1e-35
|
||||
0.003981071705534973 1e-35
|
||||
0.004073802778041126 1e-35
|
||||
0.004168693834703355 1e-35
|
||||
0.004265795188015926 1e-35
|
||||
0.004365158322401661 1e-35
|
||||
0.0044668359215096305 1e-35
|
||||
0.004570881896148752 1e-35
|
||||
0.004677351412871981 1e-35
|
||||
0.004786300923226385 1e-35
|
||||
0.004897788193684461 1e-35
|
||||
0.005011872336272725 1e-35
|
||||
0.005128613839913648 1e-35
|
||||
0.005248074602497723 1e-35
|
||||
0.005370317963702527 1e-35
|
||||
0.005495408738576248 1e-35
|
||||
0.005623413251903491 1e-35
|
||||
0.005754399373371567 1e-35
|
||||
0.00588843655355589 1e-35
|
||||
0.0060255958607435805 1e-35
|
||||
0.006165950018614822 1e-35
|
||||
0.00630957344480193 1e-35
|
||||
0.006456542290346556 1e-35
|
||||
0.006606934480075964 1e-35
|
||||
0.006760829753919818 1e-35
|
||||
0.006918309709189363 1e-35
|
||||
0.00707945784384138 1e-35
|
||||
0.007244359600749898 1e-35
|
||||
0.007413102413009177 1e-35
|
||||
0.007585775750291836 1e-35
|
||||
0.007762471166286911 1e-35
|
||||
0.007943282347242814 1e-35
|
||||
0.008128305161640995 1e-35
|
||||
0.008317637711026709 1e-35
|
||||
0.008511380382023759 1e-35
|
||||
0.008709635899560805 1e-35
|
||||
0.008912509381337459 1e-35
|
||||
0.009120108393559097 1e-35
|
||||
0.009332543007969905 1e-35
|
||||
0.009549925860214359 1e-35
|
||||
0.009772372209558112 1e-35
|
||||
0.01 1e-35
|
||||
0.010232929922807542 1e-35
|
||||
0.010471285480508996 1e-35
|
||||
0.010715193052376065 1e-35
|
||||
0.01096478196143185 1e-35
|
||||
0.011220184543019636 1e-35
|
||||
0.01148153621496883 1e-35
|
||||
0.011748975549395297 1e-35
|
||||
0.012022644346174132 1e-35
|
||||
0.012302687708123818 1e-35
|
||||
0.012589254117941675 1.3996479694365586e-35
|
||||
0.012882495516931342 8.270588387595168e-35
|
||||
0.013182567385564075 4.686869718494287e-34
|
||||
0.01348962882591654 2.5495183758866658e-33
|
||||
0.013803842646028852 1.3324555672404638e-32
|
||||
0.014125375446227547 6.69650156124801e-32
|
||||
0.01445439770745928 3.2390389883990527e-31
|
||||
0.01479108388168208 1.5091097908171951e-30
|
||||
0.01513561248436208 6.77823828047859e-30
|
||||
0.01548816618912481 2.937315521425098e-29
|
||||
0.015848931924611134 1.229023903677627e-28
|
||||
0.0162181009735893 4.96908168781093e-28
|
||||
0.016595869074375606 1.9427648570657324e-27
|
||||
0.016982436524617443 7.35033495487743e-27
|
||||
0.017378008287493755 2.6930458296420804e-26
|
||||
0.01778279410038923 9.561578992892138e-26
|
||||
0.018197008586099836 3.291978943924586e-25
|
||||
0.018620871366628676 1.0997937687327044e-24
|
||||
0.019054607179632473 3.567553707485399e-24
|
||||
0.019498445997580455 1.1243624803203092e-23
|
||||
0.0199526231496888 3.444955292838125e-23
|
||||
0.020417379446695295 1.0267403190419972e-22
|
||||
0.020892961308540396 2.978443886444978e-22
|
||||
0.021379620895022326 8.414257076941903e-22
|
||||
0.02187761623949553 2.316217559426091e-21
|
||||
0.0223872113856834 6.216040568787896e-21
|
||||
0.022908676527677734 1.6272230934438987e-20
|
||||
0.023442288153199226 4.157203175385443e-20
|
||||
0.02398832919019491 1.037033554390446e-19
|
||||
0.02454708915685031 2.527160323920646e-19
|
||||
0.025118864315095808 6.019034683630338e-19
|
||||
0.025703957827688632 1.4017653709182508e-18
|
||||
0.026302679918953815 3.1935479048228853e-18
|
||||
0.026915348039269153 7.120513330808699e-18
|
||||
0.02754228703338166 1.5544405019374462e-17
|
||||
0.028183829312644536 3.323855537770272e-17
|
||||
0.028840315031266057 6.964516155528575e-17
|
||||
0.029512092266663854 1.4305116343583793e-16
|
||||
0.03019951720402016 2.881441107018318e-16
|
||||
0.030902954325135904 5.693873153980269e-16
|
||||
0.03162277660168379 1.1041876398087576e-15
|
||||
0.03235936569296283 2.1021711242266972e-15
|
||||
0.03311311214825911 3.930358212034185e-15
|
||||
0.033884415613920256 7.219044298575817e-15
|
||||
0.034673685045253165 1.3030207068668043e-14
|
||||
0.03548133892335755 2.311976844535101e-14
|
||||
0.03630780547701014 4.033748022821911e-14
|
||||
0.03715352290971726 6.922386914347113e-14
|
||||
0.038018939632056124 1.1688255134455832e-13
|
||||
0.03890451449942807 1.942277841488844e-13
|
||||
0.039810717055349734 3.177301022377131e-13
|
||||
0.04073802778041128 5.118050485325646e-13
|
||||
0.04168693834703355 8.120079354581276e-13
|
||||
0.04265795188015928 1.2692065385883532e-12
|
||||
0.04365158322401661 1.9548976487697138e-12
|
||||
0.04466835921509633 2.967805516254491e-12
|
||||
0.04570881896148752 4.441843010381999e-12
|
||||
0.046773514128719836 6.555422864803426e-12
|
||||
0.04786300923226385 9.541971463194307e-12
|
||||
0.04897788193684464 1.3701319235101568e-11
|
||||
0.05011872336272725 1.9411422705668308e-11
|
||||
0.05128613839913651 2.713962278441181e-11
|
||||
0.05248074602497723 3.745237873994417e-11
|
||||
0.05370317963702527 5.1022162257801555e-11
|
||||
0.05495408738576243 6.862998325765646e-11
|
||||
0.05623413251903491 9.116188665618086e-11
|
||||
0.057543993733715666 1.1959774736453685e-10
|
||||
0.0588843655355589 1.5499083779831052e-10
|
||||
0.060255958607435746 1.984369787187912e-10
|
||||
0.06165950018614822 2.510326273124928e-10
|
||||
0.0630957344480193 3.1382200360394453e-10
|
||||
0.06456542290346556 3.8773428111463193e-10
|
||||
0.06606934480075957 4.735129171793244e-10
|
||||
0.06760829753919818 5.716402935905871e-10
|
||||
0.06918309709189363 6.822618784025435e-10
|
||||
0.0707945784384138 8.051149896910117e-10
|
||||
0.07244359600749899 9.39467823519304e-10
|
||||
0.07413102413009177 1.0840745931609151e-09
|
||||
0.07585775750291836 1.2371523312028086e-09
|
||||
0.07762471166286919 1.3963840850430572e-09
|
||||
0.07943282347242814 1.5589518929887134e-09
|
||||
0.08128305161640995 1.7216011213346151e-09
|
||||
0.08317637711026708 1.8807355866092624e-09
|
||||
0.08511380382023767 2.0325405447914e-09
|
||||
0.08709635899560805 2.1731282998801223e-09
|
||||
0.08912509381337459 2.2986990842106615e-09
|
||||
0.09120108393559097 2.4057082037586527e-09
|
||||
0.09332543007969915 2.4910294061764307e-09
|
||||
0.09549925860214359 2.5521041498216867e-09
|
||||
0.09772372209558111 2.587066993222519e-09
|
||||
0.1 2.5948386728995015e-09
|
||||
0.10232929922807547 2.575180500105021e-09
|
||||
0.10471285480508996 2.528706318336725e-09
|
||||
0.10715193052376071 2.4568512014159055e-09
|
||||
0.1096478196143185 2.361799080546359e-09
|
||||
0.1122018454301963 2.246374304867694e-09
|
||||
0.1148153621496883 2.113904520619545e-09
|
||||
0.11748975549395291 1.968064001474688e-09
|
||||
0.12022644346174131 1.8127075441364575e-09
|
||||
0.1230268770812381 1.6517052030269713e-09
|
||||
0.12589254117941676 1.4887874997683055e-09
|
||||
0.12882495516931336 1.3274094050272717e-09
|
||||
0.13182567385564073 1.1706395100544199e-09
|
||||
0.13489628825916533 1.0210785811529965e-09
|
||||
0.13803842646028852 8.808093380610489e-10
|
||||
0.1412537544622754 7.513770267652624e-10
|
||||
0.1445439770745928 6.33798352017303e-10
|
||||
0.1479108388168207 5.285947356327267e-10
|
||||
0.15135612484362088 4.358447618373043e-10
|
||||
0.1548816618912481 3.5525009307994924e-10
|
||||
0.15848931924611143 2.862090689151862e-10
|
||||
0.16218100973589297 2.2789257281885011e-10
|
||||
0.16595869074375613 1.79317471386279e-10
|
||||
0.16982436524617442 1.3941388375889464e-10
|
||||
0.17378008287493762 1.0708360902930806e-10
|
||||
0.1778279410038923 8.124811700436344e-11
|
||||
0.18197008586099844 6.088550225309452e-11
|
||||
0.18620871366628675 4.505664596575927e-11
|
||||
0.19054607179632482 3.292148422128933e-11
|
||||
0.19498445997580455 2.3746729602152994e-11
|
||||
0.19952623149688808 1.6906642405883577e-11
|
||||
0.20417379446695297 1.1878521424425692e-11
|
||||
0.2089296130854041 8.234516676141156e-12
|
||||
0.21379620895022325 5.6311968800517345e-12
|
||||
0.2187761623949554 3.798072102037078e-12
|
||||
0.22387211385683378 2.5260121648710612e-12
|
||||
0.22908676527677724 1.6562428798766963e-12
|
||||
0.23442288153199228 1.0703659887732308e-12
|
||||
0.239883291901949 6.816481705533256e-13
|
||||
0.24547089156850285 4.2766584329980625e-13
|
||||
0.25118864315095796 2.6427638803007737e-13
|
||||
0.25703957827688645 1.6080937186127808e-13
|
||||
0.26302679918953814 9.632736554301501e-14
|
||||
0.2691534803926914 5.6787907956332455e-14
|
||||
0.2754228703338166 3.29388752593895e-14
|
||||
0.2818382931264455 1.8792453319028872e-14
|
||||
0.28840315031266056 1.054268710470452e-14
|
||||
0.2951209226666384 5.814062644134074e-15
|
||||
0.3019951720402016 3.1508819598434147e-15
|
||||
0.30902954325135923 1.677521388861027e-15
|
||||
0.31622776601683794 8.770874187336641e-16
|
||||
0.3235936569296281 4.502023813394213e-16
|
||||
0.3311311214825911 2.2678260915331503e-16
|
||||
0.33884415613920277 1.1207052186782802e-16
|
||||
0.34673685045253166 5.4311394033068657e-17
|
||||
0.3548133892335753 2.5801332772845348e-17
|
||||
0.3630780547701014 1.2010859965334827e-17
|
||||
0.3715352290971728 5.476603553191455e-18
|
||||
0.38018939632056126 2.444969439940952e-18
|
||||
0.3890451449942805 1.0682559661573058e-18
|
||||
0.3981071705534973 4.565904734324759e-19
|
||||
0.407380277804113 1.9082391186568624e-19
|
||||
0.41686938347033553 7.794581613449174e-20
|
||||
0.42657951880159256 3.1102926232515327e-20
|
||||
0.4365158322401661 1.2118450663658595e-20
|
||||
0.4466835921509635 4.608014533984292e-21
|
||||
0.4570881896148752 1.70914673499978e-21
|
||||
0.4677351412871981 6.180388513252975e-22
|
||||
0.47863009232263853 2.1776567333421397e-22
|
||||
0.48977881936844664 7.472408687024307e-23
|
||||
0.5011872336272725 2.4956494949825537e-23
|
||||
0.5128613839913648 8.107861938716106e-24
|
||||
0.5248074602497729 2.560769685036931e-24
|
||||
0.5370317963702532 7.857986072002221e-25
|
||||
0.5495408738576248 2.3412999115812987e-25
|
||||
0.5623413251903491 6.769079540073872e-26
|
||||
0.5754399373371573 1.897770730559601e-26
|
||||
0.5888436553555896 5.155931399260007e-27
|
||||
0.6025595860743581 1.3565013767056107e-27
|
||||
0.6165950018614822 3.453632609113776e-28
|
||||
0.6309573444801936 8.5027680056385e-29
|
||||
0.6456542290346563 2.022789078916929e-29
|
||||
0.6606934480075958 4.646402537358794e-30
|
||||
0.6760829753919811 1.0297240039824094e-30
|
||||
0.6918309709189363 2.1999670471056836e-31
|
||||
0.7079457843841374 4.527390700191154e-32
|
||||
0.7244359600749899 8.967114922110128e-33
|
||||
0.7413102413009169 1.7078831203715665e-33
|
||||
0.7585775750291835 3.125236440976627e-34
|
||||
0.7762471166286912 5.489545560621661e-35
|
||||
0.7943282347242814 1e-35
|
||||
0.8128305161640986 1e-35
|
||||
0.8317637711026709 1e-35
|
||||
0.8511380382023759 1e-35
|
||||
0.8709635899560806 1e-35
|
||||
0.891250938133745 1e-35
|
||||
0.9120108393559097 1e-35
|
||||
0.9332543007969905 1e-35
|
||||
0.9549925860214359 1e-35
|
||||
0.9772372209558101 1e-35
|
||||
1.0 1e-35
|
||||
1.0232929922807537 1e-35
|
||||
1.0471285480508996 1e-35
|
||||
1.071519305237606 1e-35
|
||||
1.096478196143185 1e-35
|
||||
1.122018454301963 1e-35
|
||||
1.1481536214968828 1e-35
|
||||
1.174897554939529 1e-35
|
||||
1.2022644346174132 1e-35
|
||||
1.2302687708123812 1e-35
|
||||
1.2589254117941675 1e-35
|
||||
1.2882495516931336 1e-35
|
||||
1.3182567385564075 1e-35
|
||||
1.3489628825916533 1e-35
|
||||
1.3803842646028852 1e-35
|
||||
1.412537544622754 1e-35
|
||||
1.4454397707459279 1e-35
|
||||
1.4791083881682072 1e-35
|
||||
1.5135612484362087 1e-35
|
||||
1.5488166189124812 1e-35
|
||||
1.584893192461114 1e-35
|
||||
1.6218100973589298 1e-35
|
||||
1.6595869074375613 1e-35
|
||||
1.6982436524617444 1e-35
|
||||
1.7378008287493762 1e-35
|
||||
1.7782794100389228 1e-35
|
||||
1.8197008586099843 1e-35
|
||||
1.8620871366628675 1e-35
|
||||
1.9054607179632483 1e-35
|
||||
1.9498445997580456 1e-35
|
||||
1.9952623149688808 1e-35
|
||||
2.0417379446695296 1e-35
|
||||
2.089296130854041 1e-35
|
||||
2.1379620895022327 1e-35
|
||||
2.187761623949554 1e-35
|
||||
2.23872113856834 1e-35
|
||||
2.290867652767775 1e-35
|
||||
2.344228815319923 1e-35
|
||||
2.398832919019492 1e-35
|
||||
2.454708915685031 1e-35
|
||||
2.5118864315095824 1e-35
|
||||
2.570395782768865 1e-35
|
||||
2.630267991895384 1e-35
|
||||
2.691534803926917 1e-35
|
||||
2.754228703338163 1e-35
|
||||
2.818382931264452 1e-35
|
||||
2.8840315031266055 1e-35
|
||||
2.951209226666384 1e-35
|
||||
3.019951720402013 1e-35
|
||||
3.0902954325135887 1e-35
|
||||
3.1622776601683795 1e-35
|
||||
3.235936569296281 1e-35
|
||||
3.3113112148259076 1e-35
|
||||
3.388441561392024 1e-35
|
||||
3.4673685045253166 1e-35
|
||||
3.5481338923357533 1e-35
|
||||
3.63078054770101 1e-35
|
||||
3.715352290971724 1e-35
|
||||
3.801893963205613 1e-35
|
||||
3.890451449942805 1e-35
|
||||
3.981071705534969 1e-35
|
||||
4.073802778041126 1e-35
|
||||
4.168693834703355 1e-35
|
||||
4.265795188015925 1e-35
|
||||
4.365158322401657 1e-35
|
||||
4.46683592150963 1e-35
|
||||
4.570881896148752 1e-35
|
||||
4.677351412871981 1e-35
|
||||
4.7863009232263805 1e-35
|
||||
4.897788193684462 1e-35
|
||||
5.011872336272725 1e-35
|
||||
5.1286138399136485 1e-35
|
||||
5.248074602497723 1e-35
|
||||
5.370317963702527 1e-35
|
||||
5.4954087385762485 1e-35
|
||||
5.623413251903491 1e-35
|
||||
5.754399373371567 1e-35
|
||||
5.88843655355589 1e-35
|
||||
6.025595860743581 1e-35
|
||||
6.165950018614822 1e-35
|
||||
6.30957344480193 1e-35
|
||||
6.456542290346556 1e-35
|
||||
6.606934480075965 1e-35
|
||||
6.760829753919819 1e-35
|
||||
6.918309709189363 1e-35
|
||||
7.07945784384138 1e-35
|
||||
7.244359600749906 1e-35
|
||||
7.413102413009177 1e-35
|
||||
7.585775750291836 1e-35
|
||||
7.76247116628692 1e-35
|
||||
7.943282347242821 1e-35
|
||||
8.128305161640995 1e-35
|
||||
8.317637711026709 1e-35
|
||||
8.511380382023768 1e-35
|
||||
8.709635899560814 1e-35
|
||||
8.91250938133746 1e-35
|
||||
9.120108393559097 1e-35
|
||||
9.332543007969914 1e-35
|
||||
9.549925860214369 1e-35
|
||||
9.772372209558112 1e-35
|
||||
10.0 1e-35
|
||||
10.232929922807536 1e-35
|
||||
10.471285480509007 1e-35
|
||||
10.71519305237607 1e-35
|
||||
10.964781961431852 1e-35
|
||||
11.220184543019652 1e-35
|
||||
11.481536214968841 1e-35
|
||||
11.74897554939528 1e-35
|
||||
12.02264434617413 1e-35
|
||||
12.30268770812381 1e-35
|
||||
12.589254117941662 1e-35
|
||||
12.882495516931323 1e-35
|
||||
13.182567385564074 1e-35
|
||||
13.489628825916533 1e-35
|
||||
13.803842646028839 1e-35
|
||||
14.125375446227526 1e-35
|
||||
14.45439770745928 1e-35
|
||||
14.791083881682072 1e-35
|
||||
15.135612484362072 1e-35
|
||||
15.488166189124795 1e-35
|
||||
15.848931924611142 1e-35
|
||||
16.218100973589298 1e-35
|
||||
16.595869074375596 1e-35
|
||||
16.982436524617427 1e-35
|
||||
17.378008287493763 1e-35
|
||||
17.78279410038923 1e-35
|
||||
18.197008586099827 1e-35
|
||||
18.620871366628656 1e-35
|
||||
19.054607179632484 1e-35
|
||||
19.498445997580454 1e-35
|
||||
19.952623149688787 1e-35
|
||||
20.417379446695275 1e-35
|
||||
20.892961308540407 1e-35
|
||||
21.379620895022324 1e-35
|
||||
21.87761623949552 1e-35
|
||||
22.38721138568338 1e-35
|
||||
22.90867652767775 1e-35
|
||||
23.442288153199225 1e-35
|
||||
23.9883291901949 1e-35
|
||||
24.547089156850287 1e-35
|
||||
25.11886431509582 1e-35
|
||||
25.703957827688647 1e-35
|
||||
26.302679918953814 1e-35
|
||||
26.91534803926914 1e-35
|
||||
27.54228703338169 1e-35
|
||||
28.18382931264455 1e-35
|
||||
28.84031503126606 1e-35
|
||||
29.51209226666384 1e-35
|
||||
30.199517204020193 1e-35
|
||||
30.90295432513592 1e-35
|
||||
31.622776601683793 1e-35
|
||||
32.35936569296281 1e-35
|
||||
33.11311214825915 1e-35
|
||||
33.884415613920275 1e-35
|
||||
34.673685045253166 1e-35
|
||||
35.481338923357534 1e-35
|
||||
36.30780547701018 1e-35
|
||||
37.15352290971728 1e-35
|
||||
38.018939632056124 1e-35
|
||||
38.904514499428046 1e-35
|
||||
39.81071705534978 1e-35
|
||||
40.7380277804113 1e-35
|
||||
41.68693834703355 1e-35
|
||||
42.65795188015925 1e-35
|
||||
43.651583224016655 1e-35
|
||||
44.668359215096345 1e-35
|
||||
45.708818961487516 1e-35
|
||||
46.77351412871981 1e-35
|
||||
47.8630092322639 1e-35
|
||||
48.97788193684456 1e-35
|
||||
50.118723362727145 1e-35
|
||||
51.28613839913648 1e-35
|
||||
52.48074602497723 1e-35
|
||||
53.703179637025215 1e-35
|
||||
54.954087385762485 1e-35
|
||||
56.23413251903491 1e-35
|
||||
57.543993733715666 1e-35
|
||||
58.88436553555884 1e-35
|
||||
60.25595860743569 1e-35
|
||||
61.65950018614822 1e-35
|
||||
63.0957344480193 1e-35
|
||||
64.56542290346549 1e-35
|
||||
66.06934480075964 1e-35
|
||||
67.60829753919819 1e-35
|
||||
69.18309709189363 1e-35
|
||||
70.79457843841374 1e-35
|
||||
72.44359600749891 1e-35
|
||||
74.13102413009177 1e-35
|
||||
75.85775750291836 1e-35
|
||||
77.62471166286912 1e-35
|
||||
79.43282347242821 1e-35
|
||||
81.28305161640995 1e-35
|
||||
83.17637711026708 1e-35
|
||||
85.11380382023759 1e-35
|
||||
87.09635899560796 1e-35
|
||||
89.12509381337459 1e-35
|
||||
91.20108393559097 1e-35
|
||||
93.32543007969905 1e-35
|
||||
95.49925860214368 1e-35
|
||||
97.72372209558111 1e-35
|
||||
100.0 1e-35
|
Loading…
Reference in New Issue
Block a user