Changeset 787 for trunk/LMDZ.GENERIC/README
- Timestamp:
- Sep 19, 2012, 8:26:55 PM (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.GENERIC/README
r786 r787 769 769 - Correction in soil_setting to allow change of the number of subsurface layers 770 770 771 == 19/09/2012 == AS 772 773 (Sorry for long text but this is a quite major commit) 774 775 Paving the path for parallel computations. And moving towards a more flexible code. 776 777 Automatic allocation is used within all routines in phystd. No further mention to ngridmx and nqmx. 778 779 1. ngridmx and nqmx are still used in LMDZ.GENERIC in the dyn3d part 780 2. if the LMDZ4/LMDZ5 dynamical core is used, there is no more fixed dimensions ngridmx and nqmx 781 --> a fully flexible parallel implementation is now possible (e.g. no need to recompile when changing numbers of processors) 782 783 The important stuff : 784 - Compilation checked with ifort. OK with and without debug mode. No errors. 785 Checked for: gcm, newstart, rcm1d, kcm1d 786 - RUN GCM: Running an Earth test case. Comparison with previous revision 787 --> debug mode : perfect match. bit by bit (diff command). checked with plots 788 --> O1 mode : close match (checked with plots) 789 --> O2 mode : sometimes up to 0.5 K departure.... 790 BUT in this new version O2 and O1 are quite close while in previous version O1 and O2 differed by about, well, typically 0.5 K 791 (pictures available on request) 792 - RUN NEWSTART : perfect match (bit-by-bit) in either debug or normal mode. 793 - RUN RCM1D : perfect match in normal mode. 794 - RUN KCM1D : not tested (I don't know what is the use of kcm1d) 795 796 List of main changes : 797 - Additional arguments to some subroutines (ngrid and nq) 798 - F77 include strategy is obsolete and replaced by F90 module strategy 799 In this new strategy arrays are allocatable and allocated once at first use 800 This has to be done for all common featuring arrays defined with ngridmx or nqmx 801 surfdat.h >> surfdat_h.F90 802 tracer.h >> tracer_h.F90 803 comsaison.h >> comsaison_h.F90 804 comgeomfi.h >> comgeomfi_h.F90 805 comsoil.h >> comsoil_h.F90 806 comdiurn.h >> comdiurn_h.F90 807 fisice.h >> DELETED. was not used. probably a fossil. 808 watercap.h >> DELETED. variable put in surfdat_h.F90 809 - F77 'save' strategy is obsolete and replaced by F90 'allocatable save' strategy 810 (see previous point and e.g. new version of physiq.F90) 811 - Suppressing any mention to advtrac.h which is a common in the dynamics and needs nqmx 812 This was easily solved by adding an argument with tracer names, coming from the dynamics 813 This is probably not a definitive solution, 814 ... but this allows for generic physics to work easily with either LMDZ.GENERIC or LMDZ dynamical cores 815 - Removing consistency tests between nq and nqmx ; and ngrid and ngridmx. No use now! 816 - Adaptation of rcm1d, kcm1d, newstart given above-mentioned changes 817 818 A note on phyetat0 and soil_setting: 819 - Now written so that a slice of horizontal size 'ngrid' starting at grid point 'cursor' is read in startfi.nc 820 'cursor' is defined in dimphys.h and initialized by inifis (or in newstart) 821 this is useful for parallel computations. 822 default behavior is the usual one : sequential runs, cursor is 1, size ngrid is the whole global domain 823 824 A note on an additional change : 825 - nueffrad is now an argument to callcorrk as is the case for reffrad 826 both are saved in physiq 827 this is for consistency and lisibility (previously nueffrad was saved in callcorrk) 828 ... but there is a call to a function which modifies nueffrad in physiq 829 ... previously this was not modifying nueffrad (although it was quite cumbersome to detect this) 830 ... to be conservative I kept this behaviour and highlighted it with an array nueffrad_dummy 831 ... I added a comment because someone might want to change this
Note: See TracChangeset
for help on using the changeset viewer.