/*************************************************************************** module classe zcent_hor_traadv_cen2.h - description ***************************************************************************/ // Mohamed Berrada // locean-ipsl.upmc, Paris, October 20, 2009 //=========================================================================== // methode forward forward (YREAL x1,YREAL x2,YREAL x3,YREAL x4,YREAL x5) { /* 1 from ua 1 i j k t-1 2 from va 1 i j k t-1 3 from ta 1 i j k t-1 4 from ta 1 i j+1 k t-1 5 from ta 1 i+1 j k t-1 */ double zfui,zfvj; if(Yt==TU) YS1=0.; else{ if(Yi==NX-1 || Yj==NY-1 || Yk==NZ-1){ YS1=0.; } else{ zfui = 0.5*e2u(Yi,Yj)*x1; zfvj = 0.5*e1v(Yi,Yj)*x2; YS1 = zfui*(x3+x5); YS2 = zfvj*(x3+x4); } } // } //=========================================================================== // methode backward backward (YREAL x1,YREAL x2,YREAL x3,YREAL x4,YREAL x5) { YJ1I1=0.; YJ1I2=0.; YJ1I3=0.; YJ1I4=0.; YJ1I5=0.; YJ2I1=0.; YJ2I2=0.; YJ2I3=0.; YJ2I4=0.; YJ2I5=0.; // if(Yt==6 && Yi==28 && Yj==3) xtest("ua_1_dynspg_flt",YG1,Yi,Yj,Yk,Yt); if(Yt!=TU){ double zfui,zfvj, dzfui_x1=0.,dzfvj_x2=0.; if(Yi==NX-1 || Yj==NY-1 || Yk==NZ-1){ YJ1I1=0.; YJ1I2=0.; YJ1I3=0.; YJ1I4=0.; YJ1I5=0.; YJ2I1=0.; YJ2I2=0.; YJ2I3=0.; YJ2I4=0.; YJ2I5=0.; } else{ zfui = 0.5*e2u(Yi,Yj)*x1; dzfui_x1 = 0.5*e2u(Yi,Yj); zfvj = 0.5*e1v(Yi,Yj)*x2; dzfvj_x2 = 0.5*e1v(Yi,Yj); YJ1I1= dzfui_x1*(x3+x5); YJ1I2= 0.; YJ1I3= zfui; YJ1I4= 0.; YJ1I5= zfui; YJ2I1= 0.; YJ2I2= dzfvj_x2*(x3+x4); YJ2I3= zfvj; YJ2I4= zfvj; YJ2I5= 0.; } } // } //=========================================================================== //************************* FIN DU MODULE zcent_hor_traadv_cen2 *************************