Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Links to checkpoint65k: | (view) (download) (annotate) |
Sticky Tag: |
remove variable "year2sec" (never used anywhere)
- new integer parameter "exf_debugLev" (default set to main model debugLevel) to replace logical switch "exf_verbose".
add a call to S/R packages_unused_msg.F to print a weak warning when parameter file "data.this_pkg" exist but but useTHIS_PKG=F
adding ALLOW_RUNOFTEMP for specifying temperature of runoff Modified Files: EXF_FIELDS.h EXF_OPTIONS.h EXF_PARAM.h exf_check_range.F exf_diagnostics_fill.F exf_diagnostics_init.F exf_getffields.F exf_init.F exf_mapfields.F exf_monitor.F exf_readparms.F exf_summary.F
avoid un-balanced single or double quote (in comments)
allow loading of forcing fields through external_fields_load even if exf is on
add 1 space between "_d" and "-8" in default setting of ocean_emissivity
- pkg/exf : added run time switch useAtmWind to replace ALLOW_ATM_WIND cpp switch. ALLOW_ATM_WIND now just sets the useAtmWind default (see exf_readparms.F) and force defines ALLOW_BULKFORMULAE (EXF_OPTIONS.h). - pkg/exf, autodiff, ctrl, ecco and seaice : remove ALLOW_ATM_WIND brackets, or replace them with useAtmWind ones. - pkg/ctrl, ecco : allow to compile both ALLOW_U/VSTRESS_CONTROL and ALLOW_U/VWIND_CONTROL. Depending on useAtmWind, one is inactive, and the other is active (see exf_getffields.F/exf_getsurfacefluxes.F).
re-visit surface-relaxation setting (with exf): - do not modify internal flags doThetaClimRelax or doSaltClimRelax (left from modif in Aug 2011, when do-Theta/Salt-ClimRelax setting was moved from ini_parms.F to set_parms.F) - do not reset thetaClimFile/saltClimFile if using EXF (like other forcing files); - stop if tau-Theta/Salt-ClimRelax was already set (even if ALLOW_CLIMSST/SSS_RELAXATION is undef ; add a note for this case); - move the stop "if clim-sst/sss-TauRelax <>0 but no file" from exf_readparms.F to exf_check.F ; add a stop if ALLOW_CLIMSST/SSS_RELAXATION is undef.
Part two of ECCO-CLIVAR code merges. Completes merge of seaice area relax. code. Requires unified CPP option EXF_ALLOW_SEAICE_RELAX to be set in EXF_OPTIONS.h since this pkg controls its I/O (and avoids second CPP option in SEAICE_OPTIONS.h)
remove run-time parameter exf_yftype
- simplify default setting of of interpolation parameters and fix for case of non-uniform delY.
USE_EXF_INTERPOLATION : add a set of run-time param ({inputfield}_interpMethod), one for each interpolated input field, to select the interpolation method with a value of zero switching off the interpolation;
move delX,delY to new header file (SET_GRID.h) and adjust length to 1rst face dimensions.
fix previous modif (revision 1.66: optional treatment of namelist EXF_NML_OBCS)
make treatment of optional namelists (EXF_NML_04, EXF_NML_SGRUNOFF, EXF_NML_OBCS) more consistent, so that you need not have these lists in data.exf when they are not used.
move "useOBCSYearlyFields" from "data.obcs" (holf in OBCS_PARAMS.h) to parameter file "data.exf", namelist EXF_NML_OBCS (in EXF_PARAM.h)
-move call to S/R EXF_CHECK from exf_readparms.F to packages_check.F -print warning msg when resetting tauThetaClimRelax/tauSaltClimRelax
- change CPP option EXF_VERBOSE to run-time logical param exf_verbose (default= debugMode).
Check-in some bug fixes on behalf of Yun Xu.
adding sgrunoff variables for reading sub-glacial runoff files
Add pseudo climat. stress fields to facilitate offline seaice calculations
- introducing select_ZenAlbedo to choose method (replacing ALLOW_DIURNAL_ALBEDO & ALLOW_DAILY_ALBEDO_AIM) - adding options consistency checks in exf_check.F
improving readability of ALLOW_ZENITHANGLE related code - remove nSx,nSy dims from zen_albedo_table - rename useExfZenithAngle to useExfZenIncoming/useExfZenAlbedo and document them in EXF_PARAM.h - document ALLOW_ZENITHANGLE in EXF_OPTIONS.h and set it to false - document variables in EXF_FIELDS.h
account for the variation of albedo as a function of zenith angle
surface relaxation -- separating data and data.exf options
fix (stored & initialised) areamask_exfremo_intercept & areamask_exfremo_slope
- add a separate exf_iprec_obcs to exf_set_obcs (by default equal to exf_iprec) as part of namelist EXF_NML_01
rename thetaMin,phiMin -> xgOrigin,ygOrigin
- add parameters to extrapolate temp from level 1 & 2 up to surface; - add option to prevent negative evaporation.
Adding a capability to exf: read ice area from file.
o pkg/obcs and pkg/exf: added capability to specify seaice open boundary conditions that have a different sampling frequency than S/T/U/V obcs
replaced EXF_OPTIONS.h CPP option EXF_SUBTRACT_UVVEL_FROM_UVWIND with EXF_PARAM.h runtime parameter useRelativeWind
- implement A-grid / C-grid selection for wind-stress input files - move start date specifications for the forcing from EXF_READPARMS to EXF_INIT_FIXED (+ fix for windspeed input + 2. component wind-stress)
- add fixed turbulent transfert Coeff over ice (as in Large&Yeager 2004) - change default values of ice & snow emissivity (only used in thsice)
Further exf cleanup: o change various "constants" into runtime parameters o cleaned-up Large&Yeager04 routine which should eventually replace exf_bulkformulae.F (changed names of S/R and CPP) and merged various ALLOW_ATM_WIND options
obcsNperiod -> obcsWperiod bug reported to mitgcm-support by Gianmaria Sannino, 27 apr 07
o Add runtime parameter selectStressGridPosition o Add exf_monFreq to namelist
o Remove exf_clim code. o Split exf namelist
Partial step on cleaning CLIM part of exf.
Remove informative header EXF.h
move EXF header files from lower_case.h to UPPER_CASE.h ; add missing cvs Header & Name
snowperiod -> snowprecipperiod
call cal_FulDate only if the period is greater than zero
pkg/exf: changes to properly interpolate/mask/scale initial fields
added exf_scal_BulkCdn for scaling exf_BulkCdn
Reduce number of lines for NAMELIST.
Enable prescription of constant-in-time field for each variable
change exf_monitor: - independant of main-monitor (write it's own mnc file) - called from the end of S/R EXF_GETFORCING
reach the maximum number of continuation lines (100) that the old ifc compiler can digest.
- add new parameters and constants: longwave emissivity for ocean, ice and snow, evaporation parameters over ice for compatibility with thsice
o add new fields wspeed, snowprecip (to be able to couple to thsice) o correct Stefan-Boltzmann constant o new parameter for longwave surface emittance o separate some stuff from exf_bulkformulae into new routines exf_radiation, exf_wind
Fix bug in namelist
o Clean exf namelist o Update trend removal code
Adding parameter to remove on-the-fly global mean and trend from exf forcing and ctrl control adjustments
Replace call to nml_filter by open_copy_data_file (dont know why it hasnt always been that way in the first place).
pkg/exf: added twoDigitYear to useExfYearlyFields
pkg/exf: changed sw limit for exf_check_range and fixed initialization of unused variables for exf_readparms.F
Added monitor capablity for exf forcing fields. Reverted back to m/s as default units for runoff.
exf_check_range: * default changed to .TRUE. * will check values for niter0 if debLevA, every timestep if debLevB * STOP in exf_check_range if 'out of range' * range chosen generous to allow for potential extema TBD: a version with stricter range permitted range would be runtime parameters
Change inscal usage for runoff
o enable to read exf forcing fields as either single file or yearly files (flag useExfYearlyFields)
Added default values for exf_interp variables.
Invoke cal only if files are specified in data.exf, data.exf_clim
o small modifications in exf-package to increase flexibility: - change climtempfreeze from a constant to a runtime parameter that is specified in data.exf_clim (default = -1.9) - introduce runtime parameter windstressmax (default = 2.0) that is specified in data.exf
o no restoring terms under ice for pkg/seaice o modfied EXF_EXTERNAL_FLUXES option o added exf_albedo parameter
Adding simple range check routine for exf fields after read
added exf_offset_atemp for Celsius to Kelvin conversion of atemp
changes to pkg/cal and pkg/exf that allow and speed-up long integrations
o first check-in for the "branch-genmake2" merge o verification suite as run on shelley (gcc 3.2.2): Wed Oct 8 23:42:29 EDT 2003 T S U V G D M c m s m s m s m s E p a R g m m e . m m e . m m e . m m e . N n k u 2 i a a d i a a d i a a d i a a d 2 d e n d n x n . n x n . n x n . n x n . OPTFILE=NONE Y Y Y Y 13 16 16 16 0 16 16 16 16 16 16 16 16 13 12 0 0 pass adjustment.128x64x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 0 0 16 16 0 0 pass adjustment.cs-32x32x1 Y Y Y Y 16 16 16 16 0 16 16 16 16 16 16 22 0 16 16 22 0 pass adjust_nlfs.cs-32x32x1 Y Y Y Y -- 13 13 16 16 13 13 13 13 16 16 16 16 16 16 16 16 N/O advect_cs Y Y Y Y -- 22 16 16 16 16 16 16 13 16 16 16 16 16 16 16 16 N/O advect_xy Y Y Y Y -- 13 16 13 16 16 16 16 16 16 16 22 16 16 16 16 16 N/O advect_xz Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass aim.5l_cs Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 16 16 16 16 13 16 pass aim.5l_Equatorial_Channel Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 13 16 16 13 13 16 pass aim.5l_LatLon Y Y Y Y 13 16 16 16 16 16 16 16 16 16 13 12 13 13 16 13 16 pass exp0 Y Y Y Y 14 16 16 16 16 16 16 16 22 16 16 16 13 16 16 22 16 pass exp1 Y Y Y Y 13 13 16 13 16 16 16 16 16 13 13 16 16 13 13 13 13 pass exp2 Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass exp4 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 22 16 16 16 22 16 pass exp5 Y Y Y Y 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 pass front_relax Y Y Y Y 14 16 16 13 13 16 16 13 13 16 13 13 16 12 13 13 16 pass global_ocean.90x40x15 Y Y Y Y 10 16 16 13 13 16 13 16 16 13 13 13 13 16 16 13 16 FAIL global_ocean.cs32x15 Y Y Y Y 6 11 12 13 13 12 13 16 13 9 9 9 9 10 9 9 11 FAIL global_ocean_pressure Y Y Y Y 14 16 16 13 16 16 16 13 13 13 13 13 16 12 16 13 16 pass global_with_exf Y Y Y Y 14 16 16 16 16 16 16 16 16 11 13 22 13 16 16 9 16 pass hs94.128x64x5 Y Y Y Y 13 16 16 16 16 16 16 16 16 11 16 16 16 13 16 22 13 pass hs94.1x64x5 Y Y Y Y 14 16 16 16 16 16 16 16 16 13 16 13 13 16 16 22 13 pass hs94.cs-32x32x5 Y Y Y Y 10 10 16 13 13 16 16 16 22 16 13 13 13 13 13 22 13 FAIL ideal_2D_oce Y Y Y Y 8 16 16 16 16 16 16 16 16 13 13 8 16 16 16 16 16 FAIL internal_wave Y Y Y Y 14 16 16 16 16 16 16 16 16 13 13 22 13 13 13 22 16 pass inverted_barometer Y Y Y Y 12 16 16 16 16 16 16 16 16 16 13 12 13 13 13 13 13 FAIL lab_sea Y Y Y Y 11 16 16 16 16 16 16 16 13 13 13 12 13 16 13 12 13 FAIL natl_box Y Y Y Y 16 16 16 16 16 16 16 16 22 16 16 16 16 16 16 16 16 pass plume_on_slope Y Y Y Y 13 16 16 16 16 13 16 16 16 16 16 16 16 13 16 16 16 pass solid-body.cs-32x32x1
intel compiler (ifc) cannot handle too many continuation lines: making namelist more compact seems to work better.
o Added on-the-fly spatial interpolation capability "USE_EXF_INTERPOLATION" to pkg/exf. - This is a temporary Cartesian-grid hack until the super-duper ESMF coupler becomes available. - See verification/global_with_exf/README for usage example. - Removed obsolete EXFwindOnBgrid and SEAICEwindOnCgrid flags and modified pkg/seaice accordingly. o Bug fix to pkg/ptracers, pkg/generic_advdiff/gad_calc_rhs.F, and pkg/kpp/kpp_transport_ptr.F for dealing with tracer non-local transport term.
checkpoint51f_post o Added on-the-fly spatial interpolation capability "USE_EXF_INTERPOLATION" to pkg/exf. This is a temporary Cartesian-grid hack until the super-duper ESMF coupler becomes available. Usage example is in verification/global_with_exf. o Bug fix to pkg/ptracers, pkg/generic_advdiff/gad_calc_rhs.F, and pkg/kpp/kpp_transport_ptr.F for dealing with tracer non-local transport term.
o exf totally restructured - replaced all exf_set_ routines by one generic exf_set_gen.F and made sure it's still differentiable - split exf_getffields.F into new exf_bulkformulae.F - exf_inscal_/exf_outscal_ suffixes consistent with field names - updated adjoint/makefile and relevant verif. accordingly
merged from ecco-branch: o exf: - Enable initialisation of forcing fields to constant (runtime) values. - in exf_getffields.F Reduce i-/j-loop to interior domain, discarding overlaps. That also fixes wrong TAF-key computations for key_1, key_2 with bulf formulae. - exf_init.F modify #ifdef for exf_init_evap - exf_getffieldrec.F, ctrl_getrec.F The following INT-usages are not safe: fldsecs = int(fldsecs/fldperiod)*fldperiod fldcount = int(fldsecs/fldperiod) + 1 and were modified.
Merging from release1_p12: o Modifications for using pkg/exf with pkg/seaice - improved description of the various forcing configurations - added basic radiation bulk formulae to pkg/exf - units/sign fix for evap computation in exf_getffields.F - updated verification/global_with_exf/results/output.txt o Added pkg/sbo for computing IERS Special Bureau for the Oceans (SBO) core products, including oceanic mass, center-of-mass, angular, and bottom pressure (see pkg/sbo/README.sbo). o Lower bound for viscosity/diffusivity in pkg/kpp/kpp_routines.F to avoid negative values in shallow regions. - updated verification/natl_box/results/output.txt - updated verification/lab_sea/results/output.txt o MPI gather, scatter: eesupp/src/gather_2d.F and scatter_2d.F o Added useSingleCpuIO option (see PARAMS.h). o Updated useSingleCpuIO option in mdsio_writefield.F to work with multi-field files, e.g., for single-file pickup. o pkg/seaice: - bug fix in growth.F: QNET for no shortwave case - added HeffFile for specifying initial sea-ice thickness - changed SEAICE_EXTERNAL_FLUXES wind stress implementation o Added missing /* */ to CPP comments in pkg/seaice, pkg/exf, kpp_transport_t.F, forward_step.F, and the_main_loop.F o pkg/seaice: - adjoint-friendly modifications - added a SEAICE_WRITE_PICKUP at end of the_model_main.F
checkpoint47f_post Merging from release1_p10: o modifications for using pkg/exf with pkg/seaice - pkg/seaice CPP options SEAICE_EXTERNAL_FORCING and SEAICE_EXTERNAL_FLUXES - pkg/exf CPP options EXF_READ_EVAP and EXF_NO_BULK_COMPUTATIONS - usage examples are Experiments 8 and 9 in verification/lab_sea/README - verification/lab_sea default experiment now uses pkg/gmredi, pkg/kpp, pkg/seaice, and pkg/exf
AJA/CWH - Adding a parameter in data.exf than enables forcing files to be cycled. The parameter "repeatPeriod" specifies the cycle period in seconds and defauls to zero. When set to zero, the exf routines do not cycle forcing data.
Merging from release1_p8: o exf: updated external forcing package - bug fixes carried over from ecco-branch (missing OBCS_OPTIONS.h in two routines) - enable easy to use "no forcing". - added exf I/O for atmospheric loading - added exf I/O for runoff data - transfered scaling between exf <-> MITgcm to exf namelist - removing old exfa stuff
o merge of relevant stuff from the ecco-branch: - genmake: removed $S64 overwrite for case SunOS - pkg/exf: update and corrections for field swapping and obcs - pkg/ecco: parameter lists for the_model_main, the_main_loop harmonized between ECCO and MITgcm - pkg/autodiff: added flow directives for obcs, mdsio_gl_slice updated checkpointing_lev... lists for obcs - model/src: minor changes in forward_step, plot_field added directive for divided adjoint in the_main_loop - pkg/mdsio: added mdsio_gl_slice
Added external forcing package. Not presently supported by mitgcm, i.e. disabled by default.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.22 |