/*************************************************************************** module classe ta_traadv_musc.h - description ***************************************************************************/ // Mohamed Berrada // locean-ipsl.upmc, Paris, Mars 16, 2009 //=========================================================================== // methode forward forward (YREAL x1,YREAL x2,YREAL x3,YREAL x4,YREAL x5,YREAL x6,YREAL x7) {/* 1 from ta_trasbc 1 i j k t 2 from musf_zt1_traadv_mus 1 i j k t 3 from musf_zt1_traadv_mus 1 i-1 j k t 4 from musf_zt2_traadv_mus 1 i j k t 5 from musf_zt2_traadv_mus 1 i j-1 k t 6 from vaf_zt1_traadv_musc 1 i j k t 7 from vaf_zt1_traadv_musc 1 i j k+1 t*/ if(Yt==TU) YS1=0.; else{ double zbtr1,zta1,zbtr2,zta2; if(Yk==NZ-1 || Yj==0 || Yj==NY-1 || Yi==0 || Yi==NX-1) YS1=0.; else{ #if defined key_zco zbtr1 = 1. / ( e1t(Yi,Yj)*e2t(Yi,Yj) ); #else zbtr1 = 1. / ( e1t(Yi,Yj)*e2t(Yi,Yj)*fse3t(Yi,Yj,Yk) ); #endif // horizontal advective trends zta1 = - zbtr1 * (x2 - x3 + x4-x5); zbtr2 = 1. / fse3t(Yi,Yj,Yk); //! horizontal advective trends zta2 = - zbtr2 * ( x6-x7); // ! add it to the general tracer trends YS1=x1+zta1+zta2; } } // } //=========================================================================== // methode backward backward (YREAL x1,YREAL x2,YREAL x3,YREAL x4,YREAL x5,YREAL x6,YREAL x7) { } //=========================================================================== //********************* FIN DU MODULE sa_traadv_musc **********************