|
|
|||
File indexing completed on 2026-04-09 07:49:44
0001 // SPMT_old.h 0002 0003 // HMM: annoying shuffling : allows C4MultiLayerStack.h to stay very independent 0004 /* 0005 ss.ls[0].nr = spec.q0.f.x ; 0006 0007 ss.ls[1].nr = spec.q1.f.x ; 0008 ss.ls[1].ni = spec.q1.f.y ; 0009 ss.ls[1].d = spec.q1.f.z ; 0010 0011 ss.ls[2].nr = spec.q2.f.x ; 0012 ss.ls[2].ni = spec.q2.f.y ; 0013 ss.ls[2].d = spec.q2.f.z ; 0014 0015 ss.ls[3].nr = spec.q3.f.x ; 0016 */ 0017 0018 /* 0019 NOW INCORPORATED THE BELOW INTO stack.calc 0020 0021 const float _si = stack.ll[0].st.real() ; // sqrt(one - minus_cos_theta*minus_cos_theta) 0022 float E_s2 = _si > 0.f ? dot_pol_cross_mom_nrm/_si : 0.f ; 0023 E_s2 *= E_s2; 0024 0025 // E_s2 : S-vs-P power fraction : signs make no difference as squared 0026 // E_s2 matches E1_perp*E1_perp see sysrap/tests/stmm_vs_sboundary_test.cc 0027 0028 const float one = 1.f ; 0029 const float S = E_s2 ; 0030 const float P = one - S ; 0031 0032 const float T = S*stack.art.T_s + P*stack.art.T_p ; // matched with TransCoeff see sysrap/tests/stmm_vs_sboundary_test.cc 0033 const float R = S*stack.art.R_s + P*stack.art.R_p ; 0034 const float A = S*stack.art.A_s + P*stack.art.A_p ; 0035 //const float A1 = one - (T+R); // note that A1 matches A 0036 0037 stack.art.xx = A ; 0038 stack.art.yy = R ; 0039 stack.art.zz = T ; 0040 stack.art.ww = S ; 0041 */ 0042 0043
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|