Back to home page

EIC code displayed by LXR

 
 

    


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