Changeset 8ff5cb3 in sasview for sansmodels/src/sans/models/c_extensions/refl.c
- Timestamp:
- Dec 14, 2011 3:26:29 PM (12 years ago)
- Branches:
- master, ESS_GUI, ESS_GUI_Docs, ESS_GUI_batch_fitting, ESS_GUI_bumps_abstraction, ESS_GUI_iss1116, ESS_GUI_iss879, ESS_GUI_iss959, ESS_GUI_opencl, ESS_GUI_ordering, ESS_GUI_sync_sascalc, costrafo411, magnetic_scatt, release-4.1.1, release-4.1.2, release-4.2.2, release_4.0.1, ticket-1009, ticket-1094-headless, ticket-1242-2d-resolution, ticket-1243, ticket-1249, ticket885, unittest-saveload
- Children:
- 96814e1
- Parents:
- 5d75d65a
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sansmodels/src/sans/models/c_extensions/refl.c
r33aea7f r8ff5cb3 69 69 70 70 phi = asin(lamda*q/(4.0*pi)); 71 phi1 = c div(rcmult(phi,one),n_sup);72 alpha = c mult(n_sup,ccos(phi1));73 alpha2 = c mult(alpha,alpha);71 phi1 = cplx_div(rcmult(phi,one),n_sup); 72 alpha = cplx_mult(n_sup,cplx_cos(phi1)); 73 alpha2 = cplx_mult(alpha,alpha); 74 74 75 75 nnp1=n_sub; 76 knp1=c sqrt(rcmult(ko2,csub(cmult(nnp1,nnp1),alpha2))); //nnp1*ko*sin(phinp1)76 knp1=cplx_sqrt(rcmult(ko2,cplx_sub(cplx_mult(nnp1,nnp1),alpha2))); //nnp1*ko*sin(phinp1) 77 77 Xnp1=cassign(0.0,0.0); 78 78 dz = 0.0; … … 102 102 } 103 103 nn = cassign(1.0-sld_i*pow(lamda,2.0)/(2.0*pi),0.0); 104 nn2=c mult(nn,nn);105 106 kn=c sqrt(rcmult(ko2,csub(nn2,alpha2))); //nn*ko*sin(phin)107 an=c exp(rcmult(dz,cmult(two,kn)));108 109 fnm=c sub(kn,knp1);110 fnp=c add(kn,knp1);111 rn=c div(fnm,fnp);112 Xn=c mult(an,cdiv(cadd(rn,Xnp1),cadd(one,cmult(rn,Xnp1)))); //Xn=an*((rn+Xnp1*anp1)/(1+rn*Xnp1*anp1))104 nn2=cplx_mult(nn,nn); 105 106 kn=cplx_sqrt(rcmult(ko2,cplx_sub(nn2,alpha2))); //nn*ko*sin(phin) 107 an=cplx_exp(rcmult(dz,cplx_mult(two,kn))); 108 109 fnm=cplx_sub(kn,knp1); 110 fnp=cplx_add(kn,knp1); 111 rn=cplx_div(fnm,fnp); 112 Xn=cplx_mult(an,cplx_div(cplx_add(rn,Xnp1),cplx_add(one,cplx_mult(rn,Xnp1)))); //Xn=an*((rn+Xnp1*anp1)/(1+rn*Xnp1*anp1)) 113 113 114 114 Xnp1=Xn;
Note: See TracChangeset
for help on using the changeset viewer.