Parent Directory | Revision Log | Revision Graph
Links to HEAD: | (view) (download) (annotate) |
Sticky Tag: |
Add and update some files related to ECCO v4 release 3. The main changes are adding cost_gencost_glbmean.F to compute the costs for global mean time-series of OBP & SSH, splitting the profile cost to sample-mean and -anomaly parts, updating the cost formula for the proxy sea-ice costs, adding initial velocity as part of the control variables, and applying the correction of global mean steric height change to OBP. - cost_gencost_glbmean.F: compute cost for global mean OBP & SSH time-series - cost_profiles.F: add a CPP option (ALLOW_PROFILES_SAMPLESPLIT_COST) that if defined splits the profile cost to sample-mean and sample-anomaly costs. - cost_gencost_seaicev4.F: add a CPP option (SEAICECOST_JPL) that if defined reads in the weights for the proxy sea-ice costs. - cost_gencost_curstomize.F: if ALLOW_PSBAR_STERIC is defined, correct OBP with the global mean steric ssh change to be consistent with SSH. - ecco_phys.F: include sterGloH in a common block to be used in cost_gencost_customize.F to correct OBP when ALLOW_PSBAR_STERIC is defined. - ctrl_map_ini_genarr.F: add CPP options to include initial UV as the control variables. - cost_gencost_all.F: changes related to cost for the global mean time-series. - cost_gencost_bpv4.F: minor change related to cost for the global mean time-series. - ecco_readparms.F: changes related to cost for the global mean time-series. - ecco_ad_diff.list: include the new added cost_gencost_glbmean.F. - ctrl_get_gen.F: check if the first seven characters of xx_tauu_file & xx_tauv_filei matches "xx_tauu" or "xx_tauv". - ecco_cost_final.F: add modification related to the sample-mean profile cost. - ecco_cost_init_fixed.F: initialize the data and weights for the global mean costs for OBP & SSH, if ALLOW_GENCOST_1D is defined. - profiles_readvector.F: read in climatology field in the profile file, and mask out the weight where climatology data is flagged. Active if ALLOW_PROFILES_CLIMMASK is defined. - PROFILES_SIZE.h: changes related to the split of profile cost to sample-mean and sample-anomaly. - profiles.h: changes related to the split of profile cost to sample-mean and sample-anomaly. - ecco.h: changes related to the global mean costs - profiles_readparms.F: changes related to the profile cost splitting and masking by climatology data. - profiles_init_fixed.F: changes related to the profile cost splitting. - profiles_init_varia.F: changes related to the profile cost splitting.
- cost_gencost_all.F: pass 'c' as argument instead of gencost_mask(k) - cost_gencost_boxmean.F: use gencost_mask to specify masks rather than gencost_errfile - ecco.h: increase gencost_mask length to MAX_LEN_FNAM - ecco_check.F: checks related to gencost_mask and gencost_errfile - ecco_readparms.F: use gencost_mask to specify masks rather than gencost_errfile, set default to 0 for 2D masks to avoid confusing users
- cost_gencost_all.F: use gencost_nrec in place of gencost_nrecperiod (no effect) - ecco_check.F: check that retired run-time options are not used - ecco_cost_init_fixed.F, ecco_summary.F: finish retiring gencost_nrecperiod - ecco_readparms.F: finish retiring gencost_smooth2Ddiffnbt
strip compile-time ifdef block ALLOW_GENCOST_TRANSPORT
add using_cost_transp flag
add ALLOW_GENCOST_TRANSPORT block
- cost_generic.F: remove localbar, localweight from argument list
- cost_generic.F: add variaweight option, add localerrfile argument - cost_gencost_all.F: carry over changes in cost_generic.F
- generalized pre/post-processing parameters (_c, _i, _l arrays replacing scalefile) from ecco_readparms to cost_generic - replace 16 with MAX_LEN_FNAM in defining posproc, preproc - cost_hyd.F, cost_gencost_all.F : update cost_generic calls - ecco_summary.F : only report relevant pre/post-processing
o pkg/ecco/cost_averagesfields.F : depend on gencost_barskip rather gencost_barfile for deciding whether to write barfile o pkg/ecco/cost_generic.F : add outname argument (output file name), compute and store misfit maks*(model-data) in localdif that is then used in cost and for output, output misfit if outlev.GT.0 o pkg/ecco/cost_hyd.F, cost_gencost_all.F : add cost_generic arg o pkg/ecco/ecco.h : add gencost_barskip o pkg/ecco/ecco_cost_init_fixed.F : determine gencost_barskip (set to false if same barfile is already taken care of by other gencost, or if gencost_barfile is empty) o pkg/ecco/ecco_summary.F : add gencost_barskip to summary o pkg/ecco/cost_gencost_all.F, cost_hyd.F : rm AD recomputation
- ecco.h, ecco_readparms.F, cost_generic.F, cost_gencost_all.F, cost_hyd.F : added run time params and/or passed as arguments : gencost_posproc, gencost_scalefile, gencost_nrecperiod, gencost_outputlevel. - cost_generic.F, cost_genread.F : added preproc code ('climmon ') to replace GENERIC_BAR_MONTH - cost_genread.F : fix array dimension - ecco_cost_init_fixed.F : re-activate ecco_summary - ecco_summary.F : report gencost variables
- ecco.h : remove un-needed CCP options, add gencost_preproc, add 3D gencost - cost_generic.F : move active_read calls to cost_genread (new) and setup generic pre-processing framework (via new preproc argument). - cost_genread.F (new) : interface between cost_generic and active_read - added 3D gencost involves : cost_averagesfields.F, cost_averagesinit.F, cost_gencost_all.F, ecco.h, ecco_check.F, ecco_cost_init_fixed.F, ecco_readparms.F (ALLOW_GENCOST3D, gencost_is3d, gencost_pointer3d, gencost_bar3d, gencost_mod3d, gencost_wei3d) - added gencost_preproc involves : cost_gencost_all.F, cost_genread.F, cost_generic.F, cost_hyd.F, ecco_readparms. and ... pkg/seaice/seaice_cost_driver.F - ecco_cost_driver.F : move cost_profiles here - cost_hyd.F : remove cost_profiles from here - ecco_cost_weights.F : remove gencost weights from here - ecco_cost_init_fixed.F : more gencost weights here - ecco_cost_final.F : 0. _ d 0 fixes
- cost_gencost_customize.F : add automated fill based upon barfile name when it starts with eta, sst, sss, bp, taux, or tauy; rm hard coded gencost_modfld(i,j,bi,bj,1) = empmr(i,j,bi,bj) - cost_gencost_assignperiod.F : revise gencost conditionality - cost_gencost_sshv4.F : rm ALLOW_SSH_COST_CONTRIBUTION etc brackets, add initialization of local arrays, streamline reading of mdt, use gencost_barfile rather than psbarfile, use local variables (e.g. tpob, tpma instead of tpobs, tpmask), only include ecco.h - cost_gencost_sstv4.F : rename igen_amsre as kgen, replace sstbar with gencost_barfile, rm ALLOW_DAILYSST_COST_CONTRIBUTION - cost_gencost_boxmean.F : replace tbarfile with gencost_barfile, rename igen_boxmean as kgen - cost_gencost_sstv4.F, cost_gencost_sshv4.F : rm myiter, mytime args - cost_gencost_bpv4.F (new) : to replace cost_bp using gencost, added to ecco_ad_diff.list
- introduce cost_gencost_boxmean.F that computes a box mean temperature (for use in adjoint sensitivity studies).
- added cost_gencost_seaicev4.F : seaice ice cost function for ecco v4. - cost_gencost_seaicev4.F : call cost_gencost_seaicev4.F - ecco_readparms.F : add using_cost_seaice as a parameter.
- introduce gencost_flag(k) that is currently one of 3 values : 0 if cost term k is not used 1 if cost term is fully interactive (i.e. uses gencost_datafile) -1 if ocst term is pre-specified (i.e. uses gencost_name) - introduce using_gencost(k) logical in line with using_topex etc. - ecco_readparms.F : assign using_gencost(k) & gencost_flag(k) based on gencost_datafile(k).NE.' ' (fully interactive cost terms) or on gencost_name(k) (for pre-specified generic cost terms) - throughout : replace "if ( gencost_datafile(num_var) .ne. ' ' )" with "if ( using_gencost(num_var) ) then" - throughout : rm ALLOW_GENCOST_FREEFORM CPP option. The same thing is now achieved dynamically based on gencost_flag. - ecco_check.F : add gencost checks, account for "data"startdate in ecco_check_files, add topexmean check.
ecco_cost.h - add using_cost_altim, using_cost_sst,using_cost_bp,using_cost_scat to allow for run time switch of main cost terms. Those switches are further reset to false if files are missing (ecco_check.F) cost_gencost_all.F - using_cost_altim, using_cost_sst cost_hyd.F - using_cost_sst ecco_check.F - restrict maxNumDays test to relevant cases - add ECCO_CHECK_FILES S\R that test whether the input binary files are there, and otherwise switch off the corresponding run time flag. Rather than do the full run then crash in ecco_cost_driver. - thus reset using_cost_bp, using_cost_altim, using_cost_sst, using_cost_scat if necessary. ecco_cost_driver.F - using_cost_altim, using_cost_bp, using_cost_scat ecco_cost_init_fixed.F - remove tpTimeMask etc. bloc when not needed (i.e. undef ALLOW_NEW_SSH_COST) ecco_cost_weights.F - dont try to read data_errfile if it is not there - using_cost_sst, using_cost_altim, using_cost_bp, using_cost_scat ecco_readparms.F - activate using_cost_sst, using_cost_altim, using_cost_bp, using_cost_scat - also activate using_topex, using_ers, and using_gfo
include ECCO_OPTIONS.h instead of COST_CPPOPTIONS.h
Attempt at adding CTRL_SIZE.h
Pointwise vs Large-Scale cost function terms for MDT and bin averaged daily SLA (cost_gencost_sshv4.F) and bin averaged daily SST (cost_gencost_sstv4.F) within the gencost framework. note: cost_gencost_sshv4.F v1.1 is the same as cost_sshv4.F v1.5 except that it takes advantage of the gencost framework.
Updating gencost code * merge B. Cheng's changes * bug fixes (especially cost_generic_all.F)
bug fixes
More code for GENCOST.
Preparing usage of generic cost function terms. Enable with CPP option #ifdef ALLOW_GENCOST_CONTRIBUTION First usage is adding air-sea flux constraints when using bulk controls. ---> NOT YET READY FOR PRIME TIME <---
add missing cvs $Header:$ or $Name:$
allow user defined cost function contributions CPP: ALLOW_GENCOST_CONTRIBUTION USAGE: compute contributions in cost_gencost_all.F
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 |