source: LMDZ4/branches/LMDZ4V5.0-dev/libf/dyn3d/traceurpole.F @ 5225

Last change on this file since 5225 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
RevLine 
[524]1!
[1299]2! $Id: traceurpole.F 1299 2010-01-20 14:27:21Z abarral $
[524]3!
4          subroutine traceurpole(q,masse)
5
[1299]6      USE control_mod
7
[524]8          implicit none
9     
10#include "dimensions.h"
11c#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
23c   Arguments
24       integer iq
25       real masse(iip1,jjp1,llm)
26       real q(iip1,jjp1,llm)
27       
28
29c   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   
38c 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
49c 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   
60c 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.