| Directory: | ./ |
|---|---|
| File: | dyn3d_common/grad.f |
| Date: | 2022-01-11 19:19:34 |
| Exec | Total | Coverage | |
|---|---|---|---|
| Lines: | 13 | 13 | 100.0% |
| Branches: | 8 | 8 | 100.0% |
| Line | Branch | Exec | Source |
|---|---|---|---|
| 1 | ! | ||
| 2 | ! $Header$ | ||
| 3 | ! | ||
| 4 | 1590 | SUBROUTINE grad(klevel, pg,pgx,pgy ) | |
| 5 | c | ||
| 6 | c P. Le Van | ||
| 7 | c | ||
| 8 | c ****************************************************************** | ||
| 9 | c .. calcul des composantes covariantes en x et y du gradient de g | ||
| 10 | c | ||
| 11 | c ****************************************************************** | ||
| 12 | c pg est un argument d'entree pour le s-prog | ||
| 13 | c pgx et pgy sont des arguments de sortie pour le s-prog | ||
| 14 | c | ||
| 15 | IMPLICIT NONE | ||
| 16 | c | ||
| 17 | !----------------------------------------------------------------------- | ||
| 18 | ! INCLUDE 'dimensions.h' | ||
| 19 | ! | ||
| 20 | ! dimensions.h contient les dimensions du modele | ||
| 21 | ! ndm est tel que iim=2**ndm | ||
| 22 | !----------------------------------------------------------------------- | ||
| 23 | |||
| 24 | INTEGER iim,jjm,llm,ndm | ||
| 25 | |||
| 26 | PARAMETER (iim= 32,jjm=32,llm=39,ndm=1) | ||
| 27 | |||
| 28 | !----------------------------------------------------------------------- | ||
| 29 | ! | ||
| 30 | ! $Header$ | ||
| 31 | ! | ||
| 32 | ! | ||
| 33 | ! ATTENTION!!!!: ce fichier include est compatible format fixe/format libre | ||
| 34 | ! veillez n'utiliser que des ! pour les commentaires | ||
| 35 | ! et bien positionner les & des lignes de continuation | ||
| 36 | ! (les placer en colonne 6 et en colonne 73) | ||
| 37 | ! | ||
| 38 | ! | ||
| 39 | !----------------------------------------------------------------------- | ||
| 40 | ! INCLUDE 'paramet.h' | ||
| 41 | |||
| 42 | INTEGER iip1,iip2,iip3,jjp1,llmp1,llmp2,llmm1 | ||
| 43 | INTEGER kftd,ip1jm,ip1jmp1,ip1jmi1,ijp1llm | ||
| 44 | INTEGER ijmllm,mvar | ||
| 45 | INTEGER jcfil,jcfllm | ||
| 46 | |||
| 47 | PARAMETER( iip1= iim+1,iip2=iim+2,iip3=iim+3 & | ||
| 48 | & ,jjp1=jjm+1-1/jjm) | ||
| 49 | PARAMETER( llmp1 = llm+1, llmp2 = llm+2, llmm1 = llm-1 ) | ||
| 50 | PARAMETER( kftd = iim/2 -ndm ) | ||
| 51 | PARAMETER( ip1jm = iip1*jjm, ip1jmp1= iip1*jjp1 ) | ||
| 52 | PARAMETER( ip1jmi1= ip1jm - iip1 ) | ||
| 53 | PARAMETER( ijp1llm= ip1jmp1 * llm, ijmllm= ip1jm * llm ) | ||
| 54 | PARAMETER( mvar= ip1jmp1*( 2*llm+1) + ijmllm ) | ||
| 55 | PARAMETER( jcfil=jjm/2+5, jcfllm=jcfil*llm ) | ||
| 56 | |||
| 57 | !----------------------------------------------------------------------- | ||
| 58 | INTEGER klevel | ||
| 59 | REAL pg( ip1jmp1,klevel ) | ||
| 60 | REAL pgx( ip1jmp1,klevel ) , pgy( ip1jm,klevel ) | ||
| 61 | INTEGER l,ij | ||
| 62 | c | ||
| 63 | c | ||
| 64 |
2/2✓ Branch 0 taken 56310 times.
✓ Branch 1 taken 1590 times.
|
57900 | DO 6 l = 1,klevel |
| 65 | c | ||
| 66 |
2/2✓ Branch 0 taken 61265280 times.
✓ Branch 1 taken 56310 times.
|
61321590 | DO 2 ij = 1, ip1jmp1 - 1 |
| 67 | 61265280 | pgx( ij,l ) = pg( ij +1,l ) - pg( ij,l ) | |
| 68 | 56310 | 2 CONTINUE | |
| 69 | c | ||
| 70 | c .... correction pour pgx(ip1,j,l) .... | ||
| 71 | c ... pgx(iip1,j,l)= pgx(1,j,l) .... | ||
| 72 | CDIR$ IVDEP | ||
| 73 | 1858230 | DO 3 ij = iip1, ip1jmp1, iip1 | |
| 74 |
2/2✓ Branch 0 taken 1801920 times.
✓ Branch 1 taken 56310 times.
|
1858230 | pgx( ij,l ) = pgx( ij -iim,l ) |
| 75 | 56310 | 3 CONTINUE | |
| 76 | c | ||
| 77 |
2/2✓ Branch 0 taken 59463360 times.
✓ Branch 1 taken 56310 times.
|
59519670 | DO 4 ij = 1,ip1jm |
| 78 | 59463360 | pgy( ij,l ) = pg( ij,l ) - pg( ij +iip1,l ) | |
| 79 | 56310 | 4 CONTINUE | |
| 80 | c | ||
| 81 | 1590 | 6 CONTINUE | |
| 82 | 1590 | RETURN | |
| 83 | END | ||
| 84 |