Ignore:
Timestamp:
Sep 2, 2010, 3:45:23 PM (14 years ago)
Author:
lguez
Message:

Replaced Numerical Recipes procedures for spline interpolation (not in
the public domain) by procedures from the Pchip package in the Slatec
library. This only affects the program "ce0l", not the program
"gcm". Tested on Brodie SX8 with "-debug" and "-prod", "-parallel
none" and "-parallel mpi". "start.nc" and "limit.nc" are
changed. "startphy.nc" is not changed. The relative change is of order
1e-7 or less. The revision makes the program faster (tested on Brodie
with "-prod -d 144x142x39", CPU time is 38 s, instead of 54
s). Procedures from Slatec are untouched, except for
"i1mach.F". Created procedures "pchfe_95" and "pchsp_95" which are
wrappers for "pchfe" and "pchsp" from Slatec. "pchfe_95" and
"pchsp_95" have a safer and simpler interface.

Replaced "make" by "sxgmake" in "arch-SX8_BRODIE.fcm". Added files for
compilation by FCM with "g95".

In "arch-linux-32bit.fcm", replaced "pgf90" by "pgf95". There was no
difference between "dev" and "debug" so added "-O1" to "dev". Added
debugging options. Removed "-Wl,-Bstatic
-L/usr/lib/gcc-lib/i386-linux/2.95.2", which usually produces an error
at link-time.

Bash is now ubiquitous while KornShell? is not so use Bash instead of
KornShell? in FCM.

Replaced some statements "write(6,*)" by "write(lunout,*)". Replaced
"stop" by "stop 1" in the case where "abort_gcm" is called with "ierr
/= 0". Removed "stop" statements at the end of procedures
"limit_netcdf" and main program "ce0l" (why not let the program end
normally?).

Made some arrays automatic instead of allocatable in "start_inter_3d".

Zeroed "wake_pe", "fm_therm", "entr_therm" and "detr_therm" in
"dyn3dpar/etat0_netcdf.F90". The parallel and sequential results of
"ce0l" are thus identical.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/dyn3d/abort_gcm.F

    r1279 r1425  
    2626      character(len=*) message
    2727
    28 !      write(lunout,*) 'in abort_gcm'
    29       write(6,*) 'in abort_gcm'
     28      write(lunout,*) 'in abort_gcm'
    3029#ifdef CPP_IOIPSL
    3130      call histclo
     
    3736c     call histclo(4)
    3837c     call histclo(5)
    39 c     write(lunout,*) 'Stopping in ', modname
    40 c     write(lunout,*) 'Reason = ',message
    41 c     if (ierr .eq. 0) then
    42 c       write(lunout,*) 'Everything is cool'
    43 c     else
    44 c       write(lunout,*) 'Houston, we have a problem ', ierr
    45 c     endif
    46       write(6,*) 'Stopping in ', modname
    47       write(6,*) 'Reason = ',message
     38      write(lunout,*) 'Stopping in ', modname
     39      write(lunout,*) 'Reason = ',message
    4840      if (ierr .eq. 0) then
    49         write(6,*) 'Everything is cool'
     41        write(lunout,*) 'Everything is cool'
     42        stop
    5043      else
    51         write(6,*) 'Houston, we have a problem ', ierr
     44        write(lunout,*) 'Houston, we have a problem ', ierr
     45        stop 1
    5246      endif
    53       STOP
    5447      END
Note: See TracChangeset for help on using the changeset viewer.