/*************************************************************************** module classe dta_zfimp_t.h - description ***************************************************************************/ // Mohamed Berrada // locean-ipsl.upmc, Paris, August 1, 2011 //=========================================================================== // methode forward forward (YREAL x1,YREAL x2) { /* 1 from dta_zfimp_t 1 i j k-1 t 2 from dta_zfimp 1 i j k t-1*/ if(Yt==1){ YS1=0; } else{ if(Yi==0 || Yi==NX-1 || Yj==0 || Yj==NY-1 || Yk==NZ-1){ YS1=0.; } else{ double a0 =avt_fil*pdtz_fil/fse3w(Yi,Yj,Yk); if(Yk==0) YS1 = x2/tab_luzimp( Yi, Yj, Yk , 1 ); else YS1 = (x2 - a0 /fse3t(Yi,Yj,Yk)* x1)/tab_luzimp( Yi, Yj, Yk , 1 ); } } // } //=========================================================================== // methode backward backward (YREAL x1,YREAL x2) { YJ1I1=0.; YJ1I2=0.; if(Yt==1){ YJ1I1=0.; YJ1I2=0.; } else{ if(Yi==0 || Yi==NX-1 || Yj==0 || Yj==NY-1 || Yk==NZ-1){ YJ1I1=0.; YJ1I2=0.; } else{ double a0 =avt_fil*pdtz_fil/fse3w(Yi,Yj,Yk); if(Yk==0) YJ1I2 = 1./tab_luzimp( Yi, Yj, Yk , 1 ); else{ YJ1I1= -a0/fse3t(Yi,Yj,Yk)/tab_luzimp( Yi, Yj, Yk , 1 ); YJ1I2=1./tab_luzimp( Yi, Yj, Yk , 1 ); } } } }