source: trunk/src/zwxyz_vor_ene.h @ 9

Last change on this file since 9 was 1, checked in by jbrlod, 13 years ago

Import initial

  • Property svn:eol-style set to native
File size: 2.1 KB
Line 
1
2/***************************************************************************
3                 module classe zwxyz_vor_ene.h  -  description
4***************************************************************************/
5// Mohamed Berrada
6// locean-ipsl.upmc, Paris, Mars 9, 2009
7//===========================================================================
8//                          methode forward
9forward (YREAL x1,YREAL x2,YREAL x3,YREAL x4)
10{/*     x1      from    ua                      1  i    j    k    t-1
11        x2      from    ua                      1  i    j+1  k    t-1
12        x3      from    va                      1  i    j    k    t-1
13        x4      from    va                      1  i+1  j    k    t-1*/
14
15  if(Yt==TU)
16    YS1=0.;
17  else{
18    if(Yk==NZ-1 || Yi==NX-1 || Yj==NY-1) 
19      YS1=0.;
20    else{
21      YS1=e2u(Yi,Yj)*x1;
22      YS2=e1v(Yi,Yj)*x3;
23      //pour ntot==5--->
24      double y31=(x4+x3)*(e2v(Yi+1,Yj)-e2v(Yi,Yj));
25      double y32=(x2+x1)*(e1u(Yi,Yj+1)-e1u(Yi,Yj));
26      YS3=ff(Yi,Yj)+(y31-y32)*0.5/(e1f(Yi,Yj)*e2f(Yi,Yj));
27    }
28  }
29  // 
30}
31
32//===========================================================================
33//                         methode  backward
34
35backward (YREAL x1,YREAL x2,YREAL x3,YREAL x4)
36{
37  YJ1I1=0.;     YJ1I2=0.;   YJ1I3=0.;   YJ1I4=0.; 
38  YJ2I1=0.;     YJ2I2=0.;   YJ2I3=0.;   YJ2I4=0.; 
39  YJ3I1=0.;     YJ3I2=0.;   YJ3I3=0.;   YJ3I4=0.; 
40  if(Yt!=TU){ 
41    if(Yk==NZ-1 || Yi==NX-1 || Yj==NY-1) {
42      YJ1I1=0.;     YJ1I2=0.;   YJ1I3=0.;   YJ1I4=0.; 
43      YJ2I1=0.;     YJ2I2=0.;   YJ2I3=0.;   YJ2I4=0.; 
44      YJ3I1=0.;     YJ3I2=0.;   YJ3I3=0.;   YJ3I4=0.; 
45    }
46    else{
47      YJ1I1=e2u(Yi,Yj);
48      YJ2I3=e1v(Yi,Yj);
49      //pour ntot==5--->
50      double dy31_x3=(e2v(Yi+1,Yj)-e2v(Yi,Yj));
51      double dy31_x4=(e2v(Yi+1,Yj)-e2v(Yi,Yj));
52      double dy32_x1=(e1u(Yi,Yj+1)-e1u(Yi,Yj));
53      double dy32_x2=(e1u(Yi,Yj+1)-e1u(Yi,Yj));
54      YJ3I1=-dy32_x1*0.5/(e1f(Yi,Yj)*e2f(Yi,Yj));
55      YJ3I2=-dy32_x2*0.5/(e1f(Yi,Yj)*e2f(Yi,Yj));
56      YJ3I3=dy31_x3*0.5/(e1f(Yi,Yj)*e2f(Yi,Yj));
57      YJ3I4=dy31_x4*0.5/(e1f(Yi,Yj)*e2f(Yi,Yj));
58    }
59  }
60  // 
61}
62
63//===========================================================================
64//********************* FIN DU MODULE zwxyz_vor_ene **********************
Note: See TracBrowser for help on using the repository browser.