Changeset 1965
- Timestamp:
- Jul 5, 2018, 4:25:51 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/arch/arch-X64_OCCIGEN.fcm
r1961 r1965 4 4 %MAKE gmake 5 5 %FPP_FLAGS -P -traditional 6 %CPP_FLAGS -P -I${MKL_INC_DIR}6 %CPP_FLAGS -P 7 7 %FPP_DEF NC_DOUBLE LAPACK BLAS SGEMV=DGEMV SGEMM=DGEMM FFT_MKL 8 8 %CPP_DEF LAPACK -
trunk/LMDZ.TITAN/README
r1958 r1965 1484 1484 Add surface methane CH4 flux pseudo-evaporation diagnostic. 1485 1485 Evap was done in 2D inside the photochem before -> now 3D. 1486 1487 == 05/07/18 == JVO 1488 Replace Numerical Recipes "solve.c" in C chemistry by "solve_lapack.c" call to Lapack dgesv 1489 -> ~60 times quicker ( quasi-instantaneous now ) -
trunk/LMDZ.TITAN/libf/chimtitan/gptitan.c
r1958 r1965 51 51 /* DEBUG */ 52 52 printf("CHIMIE: lat=%g\n",(*LAT)); 53 /**/ 54 55 /* Warning about computational time */ 56 #ifndef LAPACK 57 printf("Hey there !! LAPACK key is turned off, the chemistry could be way quicker if you were activating it !\n"); 58 #endif 53 59 /**/ 54 60 … … 467 473 for( j = NLD+1; j <= NLEV-1; j++ ) 468 474 { 475 #ifdef LAPACK 476 solve_lapack( a, j-1, 0, ST-1 ); 477 #else 469 478 solve( a, j-1, 0, ST-1 ); 479 #endif 470 480 for( i = 0; i <= ST-1; i++ ) 471 481 { … … 479 489 } 480 490 } 491 #ifdef LAPACK 492 solve_lapack( a, NLEV-1, 0, ST-1 ); 493 #else 481 494 solve( a, NLEV-1, 0, ST-1 ); 495 #endif 482 496 for( j = NLEV-1; j >= NLD; j-- ) 483 497 { -
trunk/LMDZ.TITAN/libf/chimtitan/titan.h
r1950 r1965 7 7 8 8 #define R0 (double)(2575.0) /* Titan's radius */ 9 #define NLEV (int)(133) /* Nbre de niv verticaux - =llm+70 dans common_mod -> Need to be coherent with the vertical grid used !! */9 #define NLEV (int)(133) /* Nbre de niv verticaux -> Need to be coherent with the vertical grid used !! */ 10 10 #define NLD (int)(40) /* Nbre de niv verticaux faits sans diff -> Need to be coherent with the vertical grid used !! */ 11 11 #define NLRT (int)(650) /* Nbre de niv verticaux dans table fmoy - aussi dans common_mod */ … … 40 40 double omega( double, double, double ); 41 41 void solve( double ***, int, int, int ); 42 void solve_lapack( double ***, int, int, int ); 42 43 void solve_b( double ***, double **, int, int, int ); 43 44 float *rm1d( int, int );
Note: See TracChangeset
for help on using the changeset viewer.