mmbell / DualPol_simulator

A dual-polarimetric radar simulator for WRF output
MIT License
11 stars 10 forks source link

Just wondering how to calculate the pre-calculate lookup table in the script #1

Open zzwei1 opened 5 years ago

zzwei1 commented 5 years ago

As you mentioned in DualPol_simulator.jl,

Pre-calculated using T-matrix scattering code from Mishchenko (2000)

s_amp = Array{Complex64}(16,2) s_amp = [ [5.93590e-05+(3.07940e-07)im] [-5.94150e-05+(-3.08530e-07)im] [4.70300e-04+(2.29610e-06)im] [-4.76460e-04+(-2.35930e-06)im] [1.55640e-03+(6.77020e-06)im] [-1.61730e-03+(-7.37320e-06)im] [3.58870e-03+(1.28470e-05)im] [-3.86500e-03+(-1.54380e-05)im] [6.77460e-03+(1.72310e-05)im] [-7.62290e-03+(-2.45720e-05)im] [1.12570e-02+(1.34310e-05)im] [-1.33110e-02+(-2.91580e-05)im] [1.71230e-02+(-9.24210e-06)im] [-2.13580e-02+(-1.72640e-05)im] [2.44090e-02+(-6.71130e-05)im] [-3.21760e-02+(3.40790e-05)im] [3.31110e-02+(-1.84310e-04)im] [-4.61260e-02+(1.67320e-04)im] [4.31850e-02+(-3.96140e-04)im] [-6.34650e-02+(4.59880e-04)im] [5.45400e-02+(-7.54470e-04)im] [-8.42680e-02+(1.05350e-03)im] [6.70130e-02+(-1.33600e-03)im] [-1.08320e-01+(2.21210e-03)im] [8.03320e-02+(-2.25460e-03)im] [-1.34920e-01+(4.44170e-03)im] [9.40660e-02+(-3.67760e-03)im] [-1.62650e-01+(8.75570e-03)im] [1.07580e-01+(-5.84290e-03)im] [-1.88770e-01+(1.73100e-02)im] [1.20010e-01+(-9.05960e-03)im] [-2.08160e-01+(3.50790e-02)im] [0.0+(0.0)im] [0.0+(0.0)im] ];

I can't figure out how to get the amplitudes as you did.Could you please give me some guidance?It couldn't be better if you shared the source code about calculating the amplitudes using T-matrix method.Thank you very much! ----From a freshman in radar meteological

mmbell commented 5 years ago

The full T-matrix code can be obtained here: https://www.giss.nasa.gov/staff/mmishchenko/t_matrix.html

We used the oblate spheroid option in the extended precision version (amplq.lp.f) with the following axis ratios: 0.5mm:OBLATE SPHEROIDS, A/B= 1.0008134 1.0mm:OBLATE SPHEROIDS, A/B= 1.0113127 1.5mm:OBLATE SPHEROIDS, A/B= 1.0337028 2.0mm:OBLATE SPHEROIDS, A/B= 1.0661244 2.5mm:OBLATE SPHEROIDS, A/B= 1.1071438 3.0mm:OBLATE SPHEROIDS, A/B= 1.1554872 3.5mm:OBLATE SPHEROIDS, A/B= 1.2098766 4.0mm:OBLATE SPHEROIDS, A/B= 1.2689441 4.5mm:OBLATE SPHEROIDS, A/B= 1.3312241 5.0mm:OBLATE SPHEROIDS, A/B= 1.3952352 5.5mm:OBLATE SPHEROIDS, A/B= 1.4596557 6.0mm:OBLATE SPHEROIDS, A/B= 1.5235894 6.5mm:OBLATE SPHEROIDS, A/B= 1.5869015 7.0mm:OBLATE SPHEROIDS, A/B= 1.6506013 7.5mm:OBLATE SPHEROIDS, A/B= 1.7172725 8.0mm:OBLATE SPHEROIDS, A/B= 1.7916240

Calculating the backscatter (180 degree scatter) yields the scattering amplitude matrix, of which we use the S11 and S22 values in the lookup table.

A newer option for drop shape is to use the code provided in the link above by Dr. Hidde Lijense for direct calculation of the Chuang and Beard generalized Chebyshev shape for raindrops.

Another option if you are interested in more quantities other than just raindrop ZDR is to try Stonybrook's CRsim which has support for additional polarimetric variables and includes ice: https://you.stonybrook.edu/radar/research/radar-simulators/

Hope that helps.

zzwei1 commented 5 years ago

Appreciate for your reply! Your guidance is really helpful!

I probably know the whole calculation process of the lookup table,while there is another question I still can't figure out.

I noticed that the script(amplq.lp.f) is a fixed orientation version, which could calculate one single drop's scattering amplitude matrix, and we need to set the direction of the incident beam,scattered beam and the Euler angle of the scatter orientation as inputs, for example,we set thet0(The zenith angle of the incident beam)=90, theta(The zenith angle of the scattered beam)=90, phi0(The azimuth angle of the incident beam)=0, phi(The azimuth angle of the scattered beam)=180, alpha(The Euler angle α (alpha) of the scatter orientation)=0, beta(The Euler angle β (beta) of the scatter orientation)=0.

Then ,with 0.5mm:OBLATE SPHEROIDS, A/B= 1.0008134 and other inputs(such as wavelength,dielectric constant) we can get one scattering matrix and get S11 and S12.

But how could I get the arbitrarily oriented particles' scattering matrix? If we assume that the atmospheric hydrometeors have oblate shapes characterized by 2D Gaussian distribution of orientations with zero mean canting angle and 10 degree std, what should I do to get the amplitude matrix?

Does it mean that I need to loop 16 times of the single drop calculation process with different diameters and axis ratios, on the condition of setting the same directions of the incident and scattered beams and the same particle orientation?

Maybe I said something cumbersome, I would appreciate it if you could understand my thoughts and reply!

By the way , I have visited the CRsim website and I think it is very helpful to me! If you have other tools about polarimetric weather radar and its observations like CRsim, could you please share it to me? I want to learn more about them.Thanks again!

mmbell commented 5 years ago

The canting angle is handled in the Julia code via the A, B, and C coefficients in the reflectivity calculation following Jung et al. (2010 , JAMC): https://journals.ametsoc.org/doi/full/10.1175/2009JAMC2178.1

Those coefficients take into account the statistical variation due to variance in the canting angle, so you don't need to run the t-matrix code for all orientations of the drops.

zzwei1 commented 5 years ago

The canting angle is handled in the Julia code via the A, B, and C coefficients in the reflectivity calculation following Jung et al. (2010 , JAMC): https://journals.ametsoc.org/doi/full/10.1175/2009JAMC2178.1

Those coefficients take into account the statistical variation due to variance in the canting angle, so you don't need to run the t-matrix code for all orientations of the drops.

Thank you very much! I got the look up table which was in your Julia code and now I can calculate the polarimetric observations! Besides, I notice that you're the co-chair of the Organized Convection and Severe Phenomena session, which is part of the 39th International Conference on Radar Meteorology held in Japan.I submitted my abstract and it was accepted, but I'm not sure about whether my tutor would agree me to participate.If I could participate,I hope I could communicate with you face to face. I’m grateful that you answered my questions patiently and specifically, and I'm looking forward to communicate with you on the conference!