@@ -4396,5 +4396,41 @@ elemental function refractive_idx_lo_ionosphere_wv5cm3m_f542_r8(fc,Nmf,h,H10,H20
4396
4396
n = trm1* trm2
4397
4397
end function refractive_idx_lo_ionosphere_wv5cm3m_f542_r8
4398
4398
4399
+ ! угол полной атмосферной
4400
+ ! рефракции а определяется соотношением
4401
+ ! Formula: 5.49, page: 105
4402
+ elemental function analytic_sol_L11_whole_atmosphere_f549_r4 (beta ,R0 ,delnA ,z0 ,H10 ) result(L11)
4403
+ if defined(__INTEL_COMPILER) && ! defined(__GNUC__)
4404
+ ! dir$ optimize:3
4405
+ ! dir$ attributes code_align : 32 :: analytic_sol_L11_whole_atmosphere_f549_r4
4406
+ ! dir$ attributes forceinline :: analytic_sol_L11_whole_atmosphere_f549_r4
4407
+ #endif
4408
+ ! $omp declare simd(analytic_sol_L11_whole_atmosphere_f549_r4)
4409
+ real (kind= sp), intent (in ) :: beta
4410
+ real (kind= sp), intent (in ) :: R0
4411
+ real (kind= sp), intent (in ) :: delnA
4412
+ real (kind= sp), intent (in ) :: z0
4413
+ real (kind= sp), intent (in ) :: H10
4414
+ real (kind= sp) :: L11
4415
+ real (kind= sp), automatic :: btH10, exp1
4416
+ real (kind= sp), automatic :: exp2, siz0
4417
+ real (kind= sp), automatic :: cosz0, stgz0
4418
+ real (kind= sp), automatic :: trm1, trm2
4419
+ real (kind= sp), automatic :: t0, t1
4420
+ t0 = beta* R0* delnA* delnA
4421
+ btH10 = beta* H10
4422
+ siz0 = sin (z0)
4423
+ cosz0 = cos (z0)
4424
+ t1 = siz0* cosz0
4425
+ rat1 = t0/ t1
4426
+ exp1 = exp (- btH10)
4427
+ t0 = tan (z0)
4428
+ stgz0 = t0* t0
4429
+ exp2 = exp (- 2.0_sp * btH10)
4430
+ t0 = H10/ R0
4431
+ t1 = sqrt (1.0_sp+2.0_sp * stgz0* t0)
4432
+ rat2 = (exp1- exp2)/ t1
4433
+ L11 = - rat1* rat2
4434
+ end function analytic_sol_L11_whole_atmosphere_f549_r4
4399
4435
4400
4436
end module emw_refraction
0 commit comments