/*************************************************************************** module classe sbcgyre_utau_vtau.h - description ***************************************************************************/ // Mohamed Berrada // locean-ipsl.upmc, Paris, Mars 18, 2009 //=========================================================================== // methode forward forward () { /* verification norm(xY-xF),norm(xY-xF)/norm(xF) utau 6.368455529132161e-16, 3.809412027961928e-16 vtau 6.451334920495171e-16, 3.858987902188287e-16 */ if(Yt==TU){ YS1=0.; YS2=0.; } else{ // !accumulates days of previous months of this year // ! day (in hours) since january the 1st /* double ztime = float(Yt-TU)*rdt/(rmmss*rhhmm)// ! incrementation in hour - (nyear - 1) * rjjhh * raajj;// ! - nber of hours the precedent years */ double ztime = kt*rdt/(rmmss*rhhmm)// ! incrementation in hour - (nyear - 1) * rjjhh * raajj;// ! - nber of hours the precedent years double ztimemax = ((5.*30.)+21.)* 24.;// ! 21th june in hours double ztimemin = ztimemax+rjjhh*raajj/2.;// ! 21th december in hours // ! ! NB: rjjhh * raajj / 4 = 1 seasonal cycle in hours // ! mean intensity at 0.105 ; srqt(2) because projected with 45deg angle double ztau = 0.105/sqrt(2.); // ! seasonal oscillation intensity double ztau_sais = 0.015; double ztaun = ztau-ztau_sais*cos((ztime-ztimemax)/(ztimemin-ztimemax)*rpi); // ! domain from 15deg to 50deg and 1/2 period along 14deg // ! so 5/4 of half period with seasonal cycle YS1 = - ztaun*sin(rpi*(gphiu(Yi,Yj)-15.)/(29.-15.)); YS2 = ztaun*sin(rpi*(gphiv(Yi,Yj)-15.)/(29.-15.)); //JUL A MODIFIER APRES TEST // YS1= 2; //YS2=0; //FIN MODIF JUL } // } //=========================================================================== // methode backward backward () { } //=========================================================================== //********************* FIN DU MODULE sbcgyre_utau_vtau **********************