Last change
on this file since 5427 was
1299,
checked in by Laurent Fairhead, 15 years ago
|
Nettoyage general pour se rapprocher des normes et éviter des erreurs a la
compilation:
- tous les FLOAT() sont remplacés par des REAL()
- tous les STOP dans phylmd sont remplacés par des appels à abort_gcm
- le common control défini dans le fichier control.h est remplacé par
le module control_mod pour éviter des messages sur l'alignement des
variables dans les déclarations
- des $Header$ remplacés par des $Id$ pour svn
Quelques remplacements à faire ont pu m'échapper
General cleanup of the code to try and adhere to norms and to prevent some
compilation errors:
- all FLOAT() instructions have been replaced by REAL() instructions
- all STOP instructions in phylmd have been replaced by calls to abort_gcm
- the common block control defined in the control.h file has been replaced
by the control_mod to prevent compilation warnings on the alignement of
declared variables
- $Header$ replaced by $Id$ for svn
Some changes which should have been made might have escaped me
|
-
Property svn:eol-style set to
native
-
Property svn:keywords set to
Author Date Id Revision
|
File size:
1.6 KB
|
Rev | Line | |
---|
[630] | 1 | ! |
---|
[1299] | 2 | ! $Id: traceurpole.F 1299 2010-01-20 14:27:21Z fhourdin $ |
---|
[630] | 3 | ! |
---|
| 4 | subroutine traceurpole(q,masse) |
---|
| 5 | |
---|
[1299] | 6 | USE control_mod |
---|
| 7 | |
---|
[630] | 8 | implicit none |
---|
| 9 | |
---|
| 10 | #include "dimensions.h" |
---|
| 11 | c#include "paramr2.h" |
---|
| 12 | #include "paramet.h" |
---|
| 13 | #include "comconst.h" |
---|
| 14 | #include "comdissip.h" |
---|
| 15 | #include "comvert.h" |
---|
| 16 | #include "comgeom2.h" |
---|
| 17 | #include "logic.h" |
---|
| 18 | #include "temps.h" |
---|
| 19 | #include "ener.h" |
---|
| 20 | #include "description.h" |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | c Arguments |
---|
| 24 | integer iq |
---|
| 25 | real masse(iip1,jjp1,llm) |
---|
| 26 | real q(iip1,jjp1,llm) |
---|
| 27 | |
---|
| 28 | |
---|
| 29 | c Locals |
---|
| 30 | integer i,j,l |
---|
| 31 | real sommemassen(llm) |
---|
| 32 | real sommemqn(llm) |
---|
| 33 | real sommemasses(llm) |
---|
| 34 | real sommemqs(llm) |
---|
| 35 | real qpolen(llm),qpoles(llm) |
---|
| 36 | |
---|
| 37 | |
---|
| 38 | c On impose une seule valeur au pôle Sud j=jjm+1=jjp1 |
---|
| 39 | sommemasses=0 |
---|
| 40 | sommemqs=0 |
---|
| 41 | do l=1,llm |
---|
| 42 | do i=1,iip1 |
---|
| 43 | sommemasses(l)=sommemasses(l)+masse(i,jjp1,l) |
---|
| 44 | sommemqs(l)=sommemqs(l)+masse(i,jjp1,l)*q(i,jjp1,l) |
---|
| 45 | enddo |
---|
| 46 | qpoles(l)=sommemqs(l)/sommemasses(l) |
---|
| 47 | enddo |
---|
| 48 | |
---|
| 49 | c On impose une seule valeur du traceur au pôle Nord j=1 |
---|
| 50 | sommemassen=0 |
---|
| 51 | sommemqn=0 |
---|
| 52 | do l=1,llm |
---|
| 53 | do i=1,iip1 |
---|
| 54 | sommemassen(l)=sommemassen(l)+masse(i,1,l) |
---|
| 55 | sommemqn(l)=sommemqn(l)+masse(i,1,l)*q(i,1,l) |
---|
| 56 | enddo |
---|
| 57 | qpolen(l)=sommemqn(l)/sommemassen(l) |
---|
| 58 | enddo |
---|
| 59 | |
---|
| 60 | c On force le traceur à prendre cette valeur aux pôles |
---|
| 61 | do l=1,llm |
---|
| 62 | do i=1,iip1 |
---|
| 63 | q(i,1,l)=qpolen(l) |
---|
| 64 | q(i,jjp1,l)=qpoles(l) |
---|
| 65 | enddo |
---|
| 66 | enddo |
---|
| 67 | |
---|
| 68 | |
---|
| 69 | return |
---|
| 70 | end |
---|
Note: See
TracBrowser
for help on using the repository browser.