/[MITgcm]/MITgcm/pkg/seaice/seaice_growth.F
ViewVC logotype

Log of /MITgcm/pkg/seaice/seaice_growth.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Links to HEAD: (view) (download) (annotate)
Links to MAIN: (view) (download) (annotate)
Sticky Tag:

Revision 1.212 - (view) (download) (annotate) - [select for diffs]
Tue Apr 4 23:31:27 2017 UTC (7 years, 1 month ago) by jmc
Branch: MAIN
CVS Tags: HEAD, checkpoint66f, checkpoint66g, checkpoint66h, checkpoint66i, checkpoint66j, checkpoint66k, checkpoint66l, checkpoint66m, checkpoint66n, checkpoint66o
Changes since 1.211: +5 -3 lines
Diff to previous 1.211
- add specific run-time param to select level of printed plot-field-maps,
  set by default to debugLevel.


Revision 1.211 - (view) (download) (annotate) - [select for diffs]
Mon Nov 28 15:52:11 2016 UTC (7 years, 5 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint66b, checkpoint66c, checkpoint66d, checkpoint66e
Changes since 1.210: +7 -2 lines
Diff to previous 1.210
- add linear remapping scheme (Lipscomb 2001) to ITD model
- seaice_growth: also catch a case where the argument of log can be zero
  or smaller (important for code stability)


Revision 1.210 - (view) (download) (annotate) - [select for diffs]
Thu Nov 26 15:54:27 2015 UTC (8 years, 5 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint65r, checkpoint65s, checkpoint65t, checkpoint65u, checkpoint65v, checkpoint65w, checkpoint65x, checkpoint65y, checkpoint65z, checkpoint66a
Changes since 1.209: +14 -5 lines
Diff to previous 1.209
  - catch potential division by zero in ITD code, does not change
    verification results


Revision 1.209 - (view) (download) (annotate) - [select for diffs]
Fri Apr 10 10:49:41 2015 UTC (9 years, 1 month ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint65l, checkpoint65m, checkpoint65n, checkpoint65o, checkpoint65p, checkpoint65q
Changes since 1.208: +4 -2 lines
Diff to previous 1.208
replace tmpscal1**1.36 by (hopefully) faster exp(1.36*log(tmpscal1))


Revision 1.208 - (view) (download) (annotate) - [select for diffs]
Wed Jan 28 15:14:35 2015 UTC (9 years, 3 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint65j, checkpoint65k
Changes since 1.207: +27 -8 lines
Diff to previous 1.207
add the option to prescribe a fixed thickness PDF for thermodynamic
calculations


Revision 1.207 - (view) (download) (annotate) - [select for diffs]
Mon Oct 20 03:20:57 2014 UTC (9 years, 6 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint65g, checkpoint65h, checkpoint65i
Changes since 1.206: +4 -1 lines
Diff to previous 1.206
- ECCO_OPTIONS.h is needed when including ecco_cost.h, ecco.h
- AUTODIFF_OPTIONS.h is needed when including tamc.h, tamc_keys.h
- CTRL_OPTIONS.h is needed when including ctrl.h, etc

- pkg/seaice/seaice_cost*.F : clean up CPP brackets
- SEAICE_SIZE.h : replace ALLOW_AUTODIFF_TAMC with ALLOW_AUTODIFF to
  avoid needing AUTODIFF_OPTIONS.h anytime SEAICE_SIZE.h is included
  (it seems that THSICE_SIZE.h, PTRACERS_SIZE.h have the same issue...)


Revision 1.206 - (view) (download) (annotate) - [select for diffs]
Tue Aug 26 20:16:02 2014 UTC (9 years, 8 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint65c, checkpoint65d, checkpoint65e, checkpoint65f
Changes since 1.205: +2 -2 lines
Diff to previous 1.205
avoid un-balanced single/double quote in comments


Revision 1.205 - (view) (download) (annotate) - [select for diffs]
Tue Aug 26 20:08:42 2014 UTC (9 years, 8 months ago) by jmc
Branch: MAIN
Changes since 1.204: +21 -21 lines
Diff to previous 1.204
remove tabs


Revision 1.204 - (view) (download) (annotate) - [select for diffs]
Sat Aug 23 20:22:16 2014 UTC (9 years, 8 months ago) by torge
Branch: MAIN
Changes since 1.203: +194 -2 lines
Diff to previous 1.203
Introducing a new parameterization for grease ice,
 i.e. newly formed sea ice in open water:

What it does:
 The grease ice parameterization delays formation of solid
 sea ice from frazil ice by a time constant and provides a
 dynamic calculation of the initial solid sea ice thickness
 HO as a function of winds, currents and available grease ice
 volume. Grease ice does not significantly reduce heat loss
 from the ocean in winter and area covered by grease is thus
 handled like open water.
 (for details see Smedsrud and Martin, 2014, Ann.Glac.)

How to use:
- enable SEAICE_GREASE in SEAICE_OPTIONS.h
- set SItrName(1) = 'grease' in namelist SEAICE_PARM03 in data.seaice
  then output SItr01 is SItrNameLong(1) = 'grease ice volume fraction',
  with SItrUnit(1) = '[0-1]', which needs to be multiplied by SIheff
  to yield grease ice volume.
- additionally, the actual grease ice layer thickness
  (diagnostic SIgrsLT) can be saved.


Revision 1.203 - (view) (download) (annotate) - [select for diffs]
Tue May 27 15:24:00 2014 UTC (9 years, 11 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint64y, checkpoint64z, checkpoint65, checkpoint65a, checkpoint65b
Changes since 1.202: +37 -37 lines
Diff to previous 1.202
remove parameter MULTDIM, replace with nITD and runtime parameter
SEAICE_multDim (still hard-wired to nITD if SEAICE_ITD is defined)


Revision 1.202 - (view) (download) (annotate) - [select for diffs]
Fri May 23 01:12:56 2014 UTC (9 years, 11 months ago) by atn
Branch: MAIN
CVS Tags: checkpoint64x
Changes since 1.201: +28 -3 lines
Diff to previous 1.201
add SALT_PLUME_SPLIT_BASIN


Revision 1.201 - (view) (download) (annotate) - [select for diffs]
Mon Apr 28 17:13:23 2014 UTC (10 years ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint64w
Changes since 1.200: +5 -3 lines
Diff to previous 1.200
change the logic of a cpp-if to avoid recomputations related to now
global variable d_HEFFbyNEG


Revision 1.200 - (view) (download) (annotate) - [select for diffs]
Mon Apr 28 15:17:03 2014 UTC (10 years ago) by mlosch
Branch: MAIN
Changes since 1.199: +17 -19 lines
Diff to previous 1.199
remove tIce


Revision 1.199 - (view) (download) (annotate) - [select for diffs]
Thu Apr 24 16:59:23 2014 UTC (10 years ago) by mlosch
Branch: MAIN
Changes since 1.198: +45 -51 lines
Diff to previous 1.198
more or less cosmetic changes:
- avoid duplication of code
- add comments to identify the SEAICE_ITD ifdefs, hopefully increases
  readability


Revision 1.198 - (view) (download) (annotate) - [select for diffs]
Thu Apr 24 09:23:07 2014 UTC (10 years ago) by mlosch
Branch: MAIN
Changes since 1.197: +7 -5 lines
Diff to previous 1.197
- remove unused variables
- add the freshwater flux fw2ObyRidge to EmPmR


Revision 1.197 - (view) (download) (annotate) - [select for diffs]
Wed Apr 23 12:38:40 2014 UTC (10 years ago) by mlosch
Branch: MAIN
Changes since 1.196: +80 -362 lines
Diff to previous 1.196
  - move most of "PART 1" of S/R seaice_growth into a new and separate
    S/R seaice_reg_ridge that will both regularize the state variable after
    advection call the actual ridging routine;
  - requires to make 5 fields global fields: d_HEFFbyNEG,d_HSNWbyNEG,
    d_AREAbyRLX,d_HEFFbyRLX,saltFluxAdjust;
  - remove ridging code from seaice_advdiff
  - clean up remaining part 1 of seaice_growth in an attempt to make it
    more readable (this is probably subjective)
  - finally: add new ridging routine for ITD code


Revision 1.196 - (view) (download) (annotate) - [select for diffs]
Sun Apr 6 09:33:09 2014 UTC (10 years, 1 month ago) by atn
Branch: MAIN
CVS Tags: checkpoint64v
Changes since 1.195: +77 -8 lines
Diff to previous 1.195
add SALT_PLUME_IN_LEADS flag to activate pkg/salt_plume only when ice AREA
 exceeds a threshold (code contributed by I.Fenty in 2011),
add missing SouthernOcean section when ndef SEAICE_VARIABLE_SALINITY,
minor fix for case when SSS<SEAICE_salt0.


Revision 1.195 - (view) (download) (annotate) - [select for diffs]
Wed Apr 2 15:58:34 2014 UTC (10 years, 1 month ago) by mlosch
Branch: MAIN
Changes since 1.194: +29 -20 lines
Diff to previous 1.194
  - fix a bug in the lateral melt parameterization for SEAICE_ITD
    in seaice_growth; tempFrz needs to be computed inside the i/j-loop
  - rearrange loop order for better vector code in the same code block
  - rewrite the floeDiameter formula to have fewer divisions
  -  (miraculously) none of this changes the results of seaice_itd


Revision 1.194 - (view) (download) (annotate) - [select for diffs]
Tue Dec 3 22:11:01 2013 UTC (10 years, 5 months ago) by torge
Branch: MAIN
CVS Tags: checkpoint64r, checkpoint64s, checkpoint64t, checkpoint64u
Changes since 1.193: +33 -29 lines
Diff to previous 1.193
correcting calculation of SItrAREA(I,J,bi,bj,3) for case SEAICE_ITD
and updating some comments in PART 4


Revision 1.193 - (view) (download) (annotate) - [select for diffs]
Fri Nov 15 18:51:16 2013 UTC (10 years, 5 months ago) by torge
Branch: MAIN
CVS Tags: checkpoint64q
Changes since 1.192: +6 -5 lines
Diff to previous 1.192
moving calls to SEAICE_ITD_REDIST and SEAICE_ITD_SUM from
seaice_model to seaice_advdiff and seaice_growth because
HEFF needs to be updated within these two routines


Revision 1.192 - (view) (download) (annotate) - [select for diffs]
Sat Oct 5 19:36:52 2013 UTC (10 years, 7 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64p
Changes since 1.191: +12 -12 lines
Diff to previous 1.191
to use seaice-fraction from pkg/exf in other pkgs than pkg/seaice:
 rename CPP option EXF_ALLOW_SEAICE_RELAX to EXF_SEAICE_FRACTION
 and rename array obsSIce to exf_iceFraction


Revision 1.191 - (view) (download) (annotate) - [select for diffs]
Sat Aug 10 01:34:27 2013 UTC (10 years, 9 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64m, checkpoint64n, checkpoint64o
Changes since 1.190: +60 -56 lines
Diff to previous 1.190
should new call any of the DIAGNOSTICS_[]FILL routine if useDiagnostics=F


Revision 1.190 - (view) (download) (annotate) - [select for diffs]
Fri Aug 9 22:14:36 2013 UTC (10 years, 9 months ago) by jmc
Branch: MAIN
Changes since 1.189: +101 -109 lines
Diff to previous 1.189
- empty this routine when when ALLOW_ATM_TEMP is undef
- better indention (might be useful once this file becomes longer)


Revision 1.189 - (view) (download) (annotate) - [select for diffs]
Sat May 25 16:19:56 2013 UTC (10 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64h, checkpoint64i, checkpoint64j, checkpoint64k, checkpoint64l
Changes since 1.188: +6 -1 lines
Diff to previous 1.188
allows to compile without pkg/exf


Revision 1.188 - (view) (download) (annotate) - [select for diffs]
Sat May 4 17:33:03 2013 UTC (11 years ago) by jmc
Branch: MAIN
Changes since 1.187: +24 -17 lines
Diff to previous 1.187
- avoid division by zero
- remove tabs and avoid unused variables


Revision 1.187 - (view) (download) (annotate) - [select for diffs]
Fri May 3 20:22:08 2013 UTC (11 years ago) by torge
Branch: MAIN
Changes since 1.186: +87 -197 lines
Diff to previous 1.186
- introduce floe size dependent lateral melt for ITD case
- remove all "ToM" comments
- remove all SEAICE_DEBUG lines related to ITD development
- remove unused variable leadIceThickMin


Revision 1.186 - (view) (download) (annotate) - [select for diffs]
Tue Apr 9 00:24:37 2013 UTC (11 years, 1 month ago) by gforget
Branch: MAIN
CVS Tags: checkpoint64g
Changes since 1.185: +10 -1 lines
Diff to previous 1.185
- add option to grow/melt according to convergence of turbulence
  and conduction at the sea surface, rather than in two steps
  (default, SEAICE_growMeltByConv is .FALSE.)
- add print of SEAICE_doOpenWaterGrowth/Melt to stdout.


Revision 1.185 - (view) (download) (annotate) - [select for diffs]
Thu Dec 27 23:05:47 2012 UTC (11 years, 4 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint64c, checkpoint64d, checkpoint64e, checkpoint64f
Changes since 1.184: +3 -178 lines
Diff to previous 1.184
- remove legacy branch code.
- retire SEAICE_GROWTH_LEGACY and
  SEAICE_CAP_HEFF accordingly.


Revision 1.184 - (view) (download) (annotate) - [select for diffs]
Mon Dec 10 22:26:27 2012 UTC (11 years, 5 months ago) by torge
Branch: MAIN
CVS Tags: checkpoint64b
Changes since 1.183: +23 -1 lines
Diff to previous 1.183
enter one more output of HEFF and AREA to standard out
at end of HEFF increments (PART 3) in case SEAICE_DEBUG defined


Revision 1.183 - (view) (download) (annotate) - [select for diffs]
Thu Nov 15 00:03:40 2012 UTC (11 years, 5 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint64a
Changes since 1.182: +17 -13 lines
Diff to previous 1.182
avoid unused variables


Revision 1.182 - (view) (download) (annotate) - [select for diffs]
Sat Nov 10 22:19:38 2012 UTC (11 years, 6 months ago) by jmc
Branch: MAIN
Changes since 1.181: +123 -123 lines
Diff to previous 1.181
- avoid un-balanced single or double quote (in comments)
- remove tabs.


Revision 1.181 - (view) (download) (annotate) - [select for diffs]
Sat Nov 10 13:21:45 2012 UTC (11 years, 6 months ago) by heimbach
Branch: MAIN
Changes since 1.180: +5 -8 lines
Diff to previous 1.180
Bug fix.


Revision 1.180 - (view) (download) (annotate) - [select for diffs]
Fri Nov 9 22:45:37 2012 UTC (11 years, 6 months ago) by heimbach
Branch: MAIN
Changes since 1.179: +2 -22 lines
Diff to previous 1.179
Bug fix.


Revision 1.179 - (view) (download) (annotate) - [select for diffs]
Fri Nov 9 22:27:15 2012 UTC (11 years, 6 months ago) by heimbach
Branch: MAIN
Changes since 1.178: +1 -3 lines
Diff to previous 1.178
Small bug fix.


Revision 1.178 - (view) (download) (annotate) - [select for diffs]
Fri Nov 9 22:23:59 2012 UTC (11 years, 6 months ago) by heimbach
Branch: MAIN
Changes since 1.177: +916 -45 lines
Diff to previous 1.177
Complete merge of ITD code into seaice_growth.F


Revision 1.177 - (view) (download) (annotate) - [select for diffs]
Mon Sep 24 15:05:29 2012 UTC (11 years, 7 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint64
Changes since 1.176: +11 -3 lines
Diff to previous 1.176
add "multicategory" parameterization for snow in analogy to ice, default is off


Revision 1.176 - (view) (download) (annotate) - [select for diffs]
Tue Sep 18 21:28:03 2012 UTC (11 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.175: +10 -3 lines
Diff to previous 1.175
- fix SItflux diagnostics in virtual salt flux + balanceEmpmr case.


Revision 1.175 - (view) (download) (annotate) - [select for diffs]
Tue Aug 28 19:19:32 2012 UTC (11 years, 8 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63s
Changes since 1.174: +2 -6 lines
Diff to previous 1.174
- 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).


Revision 1.174 - (view) (download) (annotate) - [select for diffs]
Mon Aug 6 16:15:30 2012 UTC (11 years, 9 months ago) by jscott
Branch: MAIN
CVS Tags: checkpoint63r
Changes since 1.173: +2 -2 lines
Diff to previous 1.173
add missing col 6 ampersand


Revision 1.173 - (view) (download) (annotate) - [select for diffs]
Fri Jul 13 02:38:02 2012 UTC (11 years, 9 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63q
Changes since 1.172: +47 -34 lines
Diff to previous 1.172
 - compute the SEAICE_DISABLE_HEATCONSFIX term accordingly
   for the (.NOT.useRealFreshWaterFlux).OR.(nonlinFreeSurf.EQ.0)
   when the previous code was not correct.
 - in all cases diagnoze the boundary condition mismatch to SIaaflux
 - in the case of useRealFreshWaterFlux.AND.(nonlinFreeSurf.GT.0) add
   that term to QNET (essentially to set the melt/freeze water to 0degC).
   when SEAICEheatConsFix is true, so that the ocean+ice budget heat is closed.


Revision 1.172 - (view) (download) (annotate) - [select for diffs]
Sat Jun 30 01:31:21 2012 UTC (11 years, 10 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63p
Changes since 1.171: +213 -65 lines
Diff to previous 1.171
- do balanceEmPmR and balanceQnet based on the net fluxes
  that enter the ocean+ice system rather than QNET
  and EMPMR. Works best in real fresh water.
- SIatmFW, SIatmQnet, and SItflux computations had to be moved
  out of the diagnotics bloc, and stored in global arrays.


Revision 1.171 - (view) (download) (annotate) - [select for diffs]
Mon May 14 13:12:09 2012 UTC (11 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint63n, checkpoint63o
Changes since 1.170: +166 -168 lines
Diff to previous 1.170
- avoid unused variables
- re-order local var declaration (constant 1rst, then local arrays)


Revision 1.170 - (view) (download) (annotate) - [select for diffs]
Wed May 2 16:51:52 2012 UTC (12 years ago) by jmc
Branch: MAIN
Changes since 1.169: +13 -9 lines
Diff to previous 1.169
adjust previous modif to avoid Pb with path-scale compiler when testing
 seaice_obcs (with -fast) on acesgrid (64-bit) cluster.


Revision 1.169 - (view) (download) (annotate) - [select for diffs]
Wed Apr 25 22:59:36 2012 UTC (12 years ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint63m
Changes since 1.168: +31 -13 lines
Diff to previous 1.168
adding snowPrecip as per discussion here:
http://mitgcm.org/pipermail/mitgcm-devel/2012-April/005472.html


Revision 1.168 - (view) (download) (annotate) - [select for diffs]
Wed Apr 25 22:55:09 2012 UTC (12 years ago) by dimitri
Branch: MAIN
Changes since 1.167: +46 -125 lines
Diff to previous 1.167
reverting to 1.64, see discussion in
http://mitgcm.org/pipermail/mitgcm-devel/2012-April/005472.html


Revision 1.167 - (view) (download) (annotate) - [select for diffs]
Mon Apr 23 18:36:37 2012 UTC (12 years ago) by dimitri
Branch: MAIN
Changes since 1.166: +102 -43 lines
Diff to previous 1.166
Changes to avoid truncation errors in output - see discussion here:
http://mitgcm.org/pipermail/mitgcm-devel/2012-April/005458.html


Revision 1.166 - (view) (download) (annotate) - [select for diffs]
Sun Apr 22 23:05:31 2012 UTC (12 years ago) by dimitri
Branch: MAIN
Changes since 1.165: +36 -27 lines
Diff to previous 1.165
Added variable "rainPrecip" which contains fraction of
precip in m/s that is dumped in open ocean:
rainPrecip = max(0,precip-snowPrecip), when snowPrecip is defined
rainPrecip = precip*(1-AREA), when snowPrecip is undefined


Revision 1.165 - (view) (download) (annotate) - [select for diffs]
Sat Apr 21 23:55:37 2012 UTC (12 years ago) by dimitri
Branch: MAIN
Changes since 1.164: +12 -1 lines
Diff to previous 1.164
add snowPrecip to HSNOW in seaice_growth


Revision 1.164 - (view) (download) (annotate) - [select for diffs]
Thu Apr 19 16:06:42 2012 UTC (12 years ago) by heimbach
Branch: MAIN
Changes since 1.163: +8 -8 lines
Diff to previous 1.163
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)


Revision 1.163 - (view) (download) (annotate) - [select for diffs]
Wed Apr 18 21:00:10 2012 UTC (12 years ago) by jmc
Branch: MAIN
Changes since 1.162: +2 -2 lines
Diff to previous 1.162
fix a comment


Revision 1.162 - (view) (download) (annotate) - [select for diffs]
Thu Mar 15 03:07:31 2012 UTC (12 years, 1 month ago) by jmc
Branch: MAIN
CVS Tags: checkpoint63k, checkpoint63l
Changes since 1.161: +20 -20 lines
Diff to previous 1.161
fix typo (#idef instead of #ifdef) so that it compiles ; + document
 few "#endif" blocks


Revision 1.161 - (view) (download) (annotate) - [select for diffs]
Wed Mar 14 22:55:53 2012 UTC (12 years, 1 month ago) by heimbach
Branch: MAIN
Changes since 1.160: +83 -6 lines
Diff to previous 1.160
Merging JPLs
o seaice AREA relaxation code
o modified global mean cost imbalance code


Revision 1.160 - (view) (download) (annotate) - [select for diffs]
Sun Mar 11 13:43:46 2012 UTC (12 years, 2 months ago) by jmc
Branch: MAIN
Changes since 1.159: +38 -38 lines
Diff to previous 1.159
rename parameters: SIsalFrac to SEAICE_saltFrac & SIsal0 to SEAICE_salt0


Revision 1.159 - (view) (download) (annotate) - [select for diffs]
Mon Mar 5 15:21:44 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.158: +80 -65 lines
Diff to previous 1.158
- merging SEAICE_MULTICATEGORY define and undef cases. Now the same code is compiled either
  way, and is tested in all exps (multidim was only tested in lab_sea ad before).
- cosmetic change to prepare for future addition of ITD. no change to results. no defaults change.
- by lack of adequate verification experiments, I further used custom versions of
  global_ocean.cs32x15 to test multicat or not, with pickup or not. All should be correct.

- details :
  - added SEAICE_multDim run time param to be able to switch from single to multi cat.
  - "ifdef SEAICE_MULTICATEGORY" switches are replaced with "IF (SEAICE_multDim.GT.1) THEN".
  - "DO IT=1,MULTDIM" is replaced with "DO IT=1,SEAICE_multDim" in seaice_growth.F. For pickups and
    initializations I kept full loops (did not want to mess with the somewhat funky TICE/TICES pickup logic).
  - homogeneize seaice_growth names (heffActualP->heffActualMult and latentHeatFluxMaxP->latentHeatFluxMaxMult).
  - in growth, add extra MULTDIM dimension in all relevant local fields (needed to simplify logic, and get taf to behave).
  - clean-up growth/solve4temp interface by adding ticeInMult (TSURFin entering solve4etmp)
  and ticeOutMult (TSURFout leaving solve4temp). update seaice_solve4temp accordingly.
  - avoid recomputations (added store directives and clear logic of solve4temp input/output).


Revision 1.158 - (view) (download) (annotate) - [select for diffs]
Mon Mar 5 14:52:16 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.157: +6 -1 lines
Diff to previous 1.157
- seaice_growth.F : fix pathological case treatment for SEAICE_MULTICATEGORY.
  In case ice just disappeared, reset TICES to celsius2K as done already for TICE.
- seaice_tracer_phys.F : fix typo in diagnostic name ('Fx' not 'FX').
- no change to tested results.


Revision 1.157 - (view) (download) (annotate) - [select for diffs]
Sat Mar 3 03:33:02 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.156: +10 -10 lines
Diff to previous 1.156
- final version of turbulent flux params, as agreed at MIT ice meet:
        SEAICE_mcPheePiston (default is ~ 0.000875)
        SEAICE_mcPheeTaper (default is 0.)
        SEAICE_frazilFrac (defualt is 1.)
        SEAICE_mcPheeStepFunc (default is false)
- changes results at trunction error level.
--------
- retire short lived SEAICEturbFluxFormula (1,2,3,4) and instead
  add SEAICE_mcPheeStepFunc (true replaces SEAICEturbFluxFormula=4)
- seaice_check.F :
        -- map old params to SEAICE_mcPheePiston, SEAICE_mcPheeTaper, SEAICE_frazilFrac
        -- stops to make default change known to common user (that most likely had undef
           MCPHEE_OCEAN_ICE_HEAT_FLUX and GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR)
- SEAICE_OPTIONS.h : define MCPHEE_OCEAN_ICE_HEAT_FLUX and GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR
  that only serve the purpose of stopping in seaice_check to aknowledge the change of defaults.
- seaice_growth.F : use new params.
- SEAICE_PARAMS.h, seaice_init_fixed.F, seaice_readparms.F, seaice_summary.F : handle new params.


Revision 1.156 - (view) (download) (annotate) - [select for diffs]
Tue Feb 28 18:05:40 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.155: +43 -2 lines
Diff to previous 1.155
- avoid recomputations.


Revision 1.155 - (view) (download) (annotate) - [select for diffs]
Thu Feb 16 01:23:27 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63j
Changes since 1.154: +2 -2 lines
Diff to previous 1.154
- simple propagation of SItrNumInUse.


Revision 1.154 - (view) (download) (annotate) - [select for diffs]
Wed Feb 15 22:00:23 2012 UTC (12 years, 2 months ago) by jmc
Branch: MAIN
Changes since 1.153: +18 -15 lines
Diff to previous 1.153
calculate recip_nDim using real*8 arithmetic (fix to previous modif)


Revision 1.153 - (view) (download) (annotate) - [select for diffs]
Tue Feb 14 14:47:53 2012 UTC (12 years, 2 months ago) by mlosch
Branch: MAIN
Changes since 1.152: +85 -73 lines
Diff to previous 1.152
remove (almost) all divisions by constants within loops, without
changing the results


Revision 1.152 - (view) (download) (annotate) - [select for diffs]
Mon Feb 13 23:20:37 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.151: +36 -25 lines
Diff to previous 1.151
- simplify McPhee tapering, and allow to use it with SEAICEturbFluxFormula.EQ.
   1 or 2, using newly added run time parameter SEAICE_availHeatTaper.
- fix d_AREAbyATM, d_AREAbyOCN, d_AREAbyICE diags I broke in r1.148.
- add permanent SItflux diag that corresponds to TFLUX but includes
   ice+snow. Hence SItflux-TFLUX should match the ice+snow heat budget.
- allow activation/testing of a fix for suspected missing term in
   ocn-ice heat budget (to be confirmed). To test this, you want to
   undef SEAICE_DISABLE_HEATCONSFIX, and then set the run time param
   SEAICEheatConsFix to .TRUE. that also allows the 'SIaaflux' diagnostic.


Revision 1.151 - (view) (download) (annotate) - [select for diffs]
Mon Feb 13 19:03:50 2012 UTC (12 years, 2 months ago) by gforget
Branch: MAIN
Changes since 1.150: +2 -2 lines
Diff to previous 1.150
- bug fix : typo in mcphee step function tapering (divide not
  multiply with MCPHEE_TAPER_FAC) spotted by M. Losch (thanks).
- no change in results.


Revision 1.150 - (view) (download) (annotate) - [select for diffs]
Sat Feb 11 03:35:01 2012 UTC (12 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.149: +39 -67 lines
Diff to previous 1.149
- unified freezing point treatment : the old SEAICE_VARIABLE_FREEZING_POINT
  is now the default, and the old default constant freezing point is recovered with
  SEAICE_tempFrz0    = -1.96,
  SEAICE_dTempFrz_dS = 0.,
- retire SEAICE_freeze that was the old way of specifycing the constant freezing point.
- remove ALLOW_SEAICE_FLOODING brackets; run time switch is already there.
- bug fix (thanks to M. Losch) : the sublimation term that was missing is now
  activated. To reproduce old results that had this bug define SEAICE_DISABLE_SUBLIM.
- bug fix (silly me) : flooding sign term (seaice_growth.F r 1.149line 1211)
  was wrong for SIsal0.NE.0. Changes cs32x15 results (see upcoming checkin for detail).
- bug fix (thanks to O. Jahn) : area loss for melting  got messed up in
  seaice_growth r149 for legacy branch (no results change).
- introduce SEAICE_CAP_SUBLIM : caps sublimation heat flux in solve4temp (code from I. Fenty).
- results did not change except for global_ocean.cs32x15, mostly due to the switch
  to variable freezing point (see upcoming checkin of results for details).


Revision 1.149 - (view) (download) (annotate) - [select for diffs]
Thu Feb 9 03:42:32 2012 UTC (12 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.148: +53 -91 lines
Diff to previous 1.148
- replace with run time parameters
	SEAICE_doOpenWaterGrowth, SEAICE_doOpenWaterMelt
	SEAICE_areaLossFormula, SEAICE_areaGainFormula
  the now retired CPP switches
	SEAICE_OCN_MELT_ACT_ON_AREA, SEAICE_DO_OPEN_WATER_GROWTH
	SEAICE_DO_OPEN_WATER_MELT, FENTY_AREA_EXPANSION_CONTRACTION
- added checks : retired CPPs and consistency of run time params
- only changes global_ocean.cs32x15 fwd result at truncation level (cgd2d 11)
- couple things left to polish (soon) : seaice_summary and
  d_AREAbyATM, d_AREAbyICE, d_AREAbyOCN diags


Revision 1.148 - (view) (download) (annotate) - [select for diffs]
Tue Feb 7 18:41:09 2012 UTC (12 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.147: +23 -60 lines
Diff to previous 1.147
pkg/seaice : turbulent flux term specification via run time params.
- replace CPP switches with run time switches to facilitate testing
- retired CPPs : MCPHEE_OCEAN_ICE_HEAT_FLUX, GRADIENT_MIXED_LAYER_TURBULENCE_FACTOR
- added runtime parameter : SEAICEturbFluxFormula
- move Mcphee constants to SEAICE_PARAMS.h
- seaice_readparms.F : read turbulent flux term params (SEAICEturbFluxFormula;
  SEAICE_availHeatFrac/Frz, or SEAICE_gamma_t/_frz if apply); remove
  seaice_summary call (moved to seaice_init_fixed)
- seaice_init_fixed.F : set SEAICE_availHeatFrac/Frz depending on
  SEAICEturbFluxFormula, and seaice_summary call (moved from seaice_readparms)
- seaice_summary.F : add missing report of read turbulent flux term set up (and SITRACER).
- seaice_check.F : check range; inform and stop if retired CPPs are used (incl. SEAICE_AGE).
- seaice_growth.F : unified use of SEAICE_availHeatFrac/Frz, without
	CPP switch, same computation as before for the different options.


Revision 1.147 - (view) (download) (annotate) - [select for diffs]
Fri Feb 3 13:34:31 2012 UTC (12 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.146: +2 -73 lines
Diff to previous 1.146
- removal of the old way of seaice age tracer, which is now replaced by particular cases of SITRACER.
- retired params : SEAICEadvAge, SEAICEadvSchAge, SEAICEdiffKhAge, IceAgeTrFile.
- added to SITRACER : IceAgeTrFile, check pickups, monitor, output.


Revision 1.146 - (view) (download) (annotate) - [select for diffs]
Mon Jan 30 15:30:31 2012 UTC (12 years, 3 months ago) by mlosch
Branch: MAIN
Changes since 1.145: +2 -1 lines
Diff to previous 1.145
add mask to avoid non-zero ice thickness over land (non-legacy code)


Revision 1.145 - (view) (download) (annotate) - [select for diffs]
Fri Jan 13 21:09:35 2012 UTC (12 years, 3 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint63i
Changes since 1.144: +10 -7 lines
Diff to previous 1.144
- fix bug reported on Dec 02, 2011 (mitgcm-devel): was not compiling
  with #undef SEAICE_GROWTH_LEGACY and #undef SHORTWAVE_HEATING)
- change TMIX (previously in common block) to a local var (without overlap)


Revision 1.144 - (view) (download) (annotate) - [select for diffs]
Fri Jan 13 14:19:25 2012 UTC (12 years, 3 months ago) by jmc
Branch: MAIN
Changes since 1.143: +7 -7 lines
Diff to previous 1.143
comment out filling of User-reserved Diagnostics (UDIAG#, SDIAG#)


Revision 1.143 - (view) (download) (annotate) - [select for diffs]
Sat Dec 24 18:38:39 2011 UTC (12 years, 4 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint63h
Changes since 1.142: +27 -19 lines
Diff to previous 1.142
- allow tocompile with exf options ALLOW_ATM_TEMP undefined.
- fix for the case where ALLOW_RUNOFF is undefined.


Revision 1.142 - (view) (download) (annotate) - [select for diffs]
Thu Dec 15 22:30:17 2011 UTC (12 years, 4 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint63g
Changes since 1.141: +81 -2 lines
Diff to previous 1.141
- fix heat conservation of the coupled ocean-seaice system.
  (some polishing is still needed but this should do it for now)


Revision 1.141 - (view) (download) (annotate) - [select for diffs]
Wed Dec 14 23:03:12 2011 UTC (12 years, 4 months ago) by gforget
Branch: MAIN
Changes since 1.140: +5 -1 lines
Diff to previous 1.140
- add missing term, which was breaking conservation.


Revision 1.140 - (view) (download) (annotate) - [select for diffs]
Thu Jul 21 13:45:42 2011 UTC (12 years, 9 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint63a, checkpoint63b, checkpoint63c, checkpoint63d, checkpoint63e, checkpoint63f
Changes since 1.139: +12 -14 lines
Diff to previous 1.139
small changes that permit vectorizable adjoint code. In general
statements like tmpscal=fld(i,j) (just a simple copy) are problematic
and should be avoided where possible. Other places where this is
a frequent problem is find_rho.F


Revision 1.139 - (view) (download) (annotate) - [select for diffs]
Mon Jul 18 08:55:18 2011 UTC (12 years, 9 months ago) by heimbach
Branch: MAIN
Changes since 1.138: +3 -3 lines
Diff to previous 1.138
More fixes to store dirs
(common blocks and keys were also wrong)


Revision 1.138 - (view) (download) (annotate) - [select for diffs]
Sat Jul 16 22:55:57 2011 UTC (12 years, 9 months ago) by heimbach
Branch: MAIN
Changes since 1.137: +10 -3 lines
Diff to previous 1.137
Quick fix of store directives.
May need another closer look.


Revision 1.137 - (view) (download) (annotate) - [select for diffs]
Fri Jul 15 13:01:07 2011 UTC (12 years, 9 months ago) by mlosch
Branch: MAIN
Changes since 1.136: +92 -108 lines
Diff to previous 1.136
  - fix recomputation with FENTY_AREA_EXPANSION_CONTRACTION code,
    remove then obsolete STORE directives
  - fix STORE directives for tice and tices, so that only the
    appropriate part of the fields are stored (and not the entire
    field)
  - cosmetic changes: adjust CPP flags and indentation for better
    legibilty


Revision 1.136 - (view) (download) (annotate) - [select for diffs]
Wed Jun 29 23:40:35 2011 UTC (12 years, 10 months ago) by ifenty
Branch: MAIN
CVS Tags: checkpoint63
Changes since 1.135: +6 -12 lines
Diff to previous 1.135
sea ice sublimation conservation fixes: make the calculation of the maximum
latent heat flux standard (even if it's not always used to cap the actual
latent heat flux) for diagnostic purposes


Revision 1.135 - (view) (download) (annotate) - [select for diffs]
Wed Jun 29 21:39:06 2011 UTC (12 years, 10 months ago) by ifenty
Branch: MAIN
Changes since 1.134: +88 -20 lines
Diff to previous 1.134
seaice package/sublimation treatment:  added a cap on the latent heat flux over sea ice
such that the amount of sublimation over one time step cannot exceed the amount of
mass in the sea ice and snow.  Works for the non-legacy version of seaice_solve4temp.

Added diagnostics SImaxLHF, SIactLHF (max and actual latent heat flux) and
SIrsSubl (residual freshwater flux following removal of ice and snow)


 ----------------------------------------------------------------------
 Modified Files:
 	seaice_diagnostics_init.F seaice_growth.F seaice_solve4temp.F
 ----------------------------------------------------------------------


Revision 1.134 - (view) (download) (annotate) - [select for diffs]
Mon Jun 27 23:23:49 2011 UTC (12 years, 10 months ago) by jmc
Branch: MAIN
Changes since 1.133: +51 -51 lines
Diff to previous 1.133
fix un-closed parenthesis so that it can at least compile.


Revision 1.133 - (view) (download) (annotate) - [select for diffs]
Mon Jun 27 13:19:12 2011 UTC (12 years, 10 months ago) by gforget
Branch: MAIN
Changes since 1.132: +13 -8 lines
Diff to previous 1.132
- bug fix : frWtrAtm needs a_FWbySublim ifdef SEAICE_ADD_SUBLIMATION_TO_FWBUDGET.
- bug fix : missing part to Martin's r_FWbySublim pathological case fix.


Revision 1.132 - (view) (download) (annotate) - [select for diffs]
Mon Jun 27 13:15:45 2011 UTC (12 years, 10 months ago) by gforget
Branch: MAIN
Changes since 1.131: +63 -46 lines
Diff to previous 1.131
- remove the CPP switch around the *_FWbySublim unit change and move diagnostic
  fill for SIatmQnt, SIfwSubl, SIatmFW to the end of seaice_growth.F.
- add diagnostic of the actual sublimation freshwater flux (that is 0. ifndef
  SEAICE_ADD_SUBLIMATION_TO_FWBUDGET) and of the latent heat flux (evap+sublim).


Revision 1.131 - (view) (download) (annotate) - [select for diffs]
Sun Jun 19 02:31:40 2011 UTC (12 years, 10 months ago) by ifenty
Branch: MAIN
CVS Tags: checkpoint62z
Changes since 1.130: +53 -21 lines
Diff to previous 1.130
Minor changes to seaice package.

1) Retired old variables (A22, SEAICE_lhsublim, areaMax, areaMin, hiceMin) and
   added some new ones (SEAICE_area_reg, SEAICE_hice_reg, SEAICE_area_floor)

  - Differentiated "regularization variables" from "floor variables"
    * areaMin became SEAICE_area_reg (old A22) and SEAICE_area_floor
    * hiceMin became SEAICE_hice_reg (old hiceMin)
     (with _reg meaning regularization variable)

  - SEAICE_lhSublim becomes lhSublim, the sum of SEAICE_lhEvap and SEAICE_lhFusion
    so as to ensure energy conservation when going between phases

  - A22 was not used anywhere

2) Changed regularization procedure for heffActual and hsnowActual to ensure
   well-boundedness and smooth adjoint in seaice_growth.F

3) Fixed a bug where seaice_solve4temp would not recognize ice-free grid cells
   because the old regularization always set heffActual >= 0.05 cm

4) Changed the model so that the default behavior is to put a small (10^-5) "floor"
   on AREA when HEFF > 0.
   - went from requiring ALLOW_PRECLUDE_INFINITESIMAL_AREA to be defined to
     requiring that DISABLE_AREA_FLOOR *not* be defined

 Modified Files:
 	SEAICE_PARAMS.h seaice_check.F seaice_growth.F
 	seaice_readparms.F seaice_solve4temp.F seaice_summary.F


Revision 1.130 - (view) (download) (annotate) - [select for diffs]
Wed Jun 15 01:31:07 2011 UTC (12 years, 10 months ago) by gforget
Branch: MAIN
Changes since 1.129: +32 -30 lines
Diff to previous 1.129
- switch SIdH*, SIdA*, SIdS* increment diags to rate diags (m->m/s typically).


Revision 1.129 - (view) (download) (annotate) - [select for diffs]
Mon Jun 13 23:21:18 2011 UTC (12 years, 10 months ago) by gforget
Branch: MAIN
Changes since 1.128: +23 -5 lines
Diff to previous 1.128
- added diagnostics for seaice genereic tracers (SItr*).
- added SItrUnit and SItrNameLong run time param (for SItr* diags).
- in diag names, replaced 'PrTh' abbrev. of 'preceeding thermo' with 'PT'.


Revision 1.128 - (view) (download) (annotate) - [select for diffs]
Sun Jun 12 16:07:30 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.127: +32 -40 lines
Diff to previous 1.127
- re-order diags inits so that they appear in order in available_diagnostics.log
- added diags: hsnow thermo. increments, area preceeding ridiging process,
  area/heff/hsnow preceeding thermodynamic growth/melt.
- modified diag: SIdA; output actual effect, as the description states.
- modified description: SIqneti, SIqneto, SIuheff, SIvheff, SIdAb*, HSNOW.
- retired redundant diags: SIyneg, SIfice, SIsnwice, SIthdgrh.


Revision 1.127 - (view) (download) (annotate) - [select for diffs]
Thu Jun 9 19:37:01 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.126: +9 -2 lines
Diff to previous 1.126
- seaice_tracer_phys.F and seaice_advdiff.F
  do ice cover tracers, in addition to ice volume tracers.
- seaice_readparms.F
  add SItrMate ('HEFF' or 'AREA') in PARAMS03 to switch
    from ice volume tracer (defualt) to ice cover tracer
- seaice_growth.F
  use areaMax in AREA update (part 4), consistent with ridging step (part 2.5).
  store AREA in SItrAREA at the ridging and update steps (for use with SItracer).


Revision 1.126 - (view) (download) (annotate) - [select for diffs]
Wed Jun 8 03:41:34 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.125: +3 -1 lines
Diff to previous 1.125
- introduce SPsalFRAC run time parameter that sets the fraction of the salt by-product of ice growth
  (SPsalFRAC*(1-SIsalFRAC)*salt typically) that gets vertically redistributed by pkg/salt_plume.


Revision 1.125 - (view) (download) (annotate) - [select for diffs]
Wed Jun 8 03:04:50 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.124: +104 -246 lines
Diff to previous 1.124
-re-organization of diagnostics and sublimation.
-spotted bug in sublimation? see line 1501.


Revision 1.124 - (view) (download) (annotate) - [select for diffs]
Tue Jun 7 03:58:23 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.123: +29 -6 lines
Diff to previous 1.123
- introducing ALLOW_SITRACER and seaice_tracer_phys.F to handle generic seaice tracer.
  For now it covers, and was tested for, salinity and age (work in progress).
- introducing siEps (1e-5, parameter, defined in SEAICE_PARAMS.h).


Revision 1.123 - (view) (download) (annotate) - [select for diffs]
Sat May 28 22:39:20 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.122: +65 -96 lines
Diff to previous 1.122
cleanup of part 4 (d_AREA computation)
- remove d_HEFFbyFLOODING in LEGACY branch
   (has not been computed at the point when d_AREA=0).
- move FENTY_AREA_EXPANSION_CONTRACTION
    within EVOLUTION branch where it belongs.
- add a MAX in EVOLUTION branch which is needed
    since SEAICE_DO_OPEN_WATER_MELT was added.
- abbreviate a few comments.


Revision 1.122 - (view) (download) (annotate) - [select for diffs]
Fri May 27 23:27:15 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
Changes since 1.121: +18 -23 lines
Diff to previous 1.121
- use Ian Fenty's capping formulas for actual ice
  thickness thoughout EVOLUTION branch.
- put treatment pathological case #2) in CPP brackets
  (ALLOW_AVOID_INFINITESIMAL_AREA, undef by default).
- update global_ocean.cs32x15 and 1D_ocean_ice_column
  results accordingly


Revision 1.121 - (view) (download) (annotate) - [select for diffs]
Wed May 25 19:34:24 2011 UTC (12 years, 11 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint62y
Changes since 1.120: +11 -76 lines
Diff to previous 1.120
-seaice_growth.F :
1) in EVOLUTION branch, always include a_QSWbyATM_cover in qnet (as it should be).
2) remove the Reproduce_v1p109 bloc that is essentially the same as the reference code.
3) remove duplicated blocs of code. After the a_QSWbyATM_cover fix (thanks to I. Fenty)
  FENTY_DELTA_HEFF_OPEN_WATER_FLUXES is redundant with SEAICE_DO_OPEN_WATER_GROWTH and
  FENTY_OPEN_WATER_FLUXES_MELT_ICE is redundant with SEAICE_DO_OPEN_WATER_MELT.
- seaice_check.F : FENTY_AREA_EXPANSION_CONTRACTION requires SEAICE_DO_OPEN_WATER_GROWTH.
- verif/1D_ocean_ice_column : update SEAICE_OPTIONS.h according to item 3).
- verif/global_ocean.cs32x15 : update results according to item 1)

note: it turns out that FENTY_OPEN_WATER_FLUXES_MELT_ICE is not actually
tested in 1D_ocean_ice_column over 10 time steps, so I did tests over
a year to check that SEAICE_DO_OPEN_WATER_MELT was indeed equivalent to
FENTY_OPEN_WATER_FLUXES_MELT_ICE. It is.


Revision 1.120 - (view) (download) (annotate) - [select for diffs]
Tue May 17 19:50:26 2011 UTC (12 years, 11 months ago) by heimbach
Branch: MAIN
Changes since 1.119: +80 -41 lines
Diff to previous 1.119
Merge iceage code of Pierre Rampal
* update/change/correct ice age calculations
* add age updates for pathological cases
Probably needs more testing...


Revision 1.119 - (view) (download) (annotate) - [select for diffs]
Thu Apr 28 02:06:31 2011 UTC (13 years ago) by ifenty
Branch: MAIN
CVS Tags: checkpoint62x
Changes since 1.118: +10 -10 lines
Diff to previous 1.118
Renaming of compile time flag SEAICE_SALINITY to SEAICE_VARIABLE_SALINITY and
SEAICE_salinity to SIsalFRAC.

Added logical checks for the use of the retired variable names in
 seaice_readparms and seaice_check.

 ----------------------------------------------------------------------
 Modified Files:
 	pkg/autodiff/autodiff_restore.F pkg/autodiff/autodiff_store.F
 	pkg/obcs/obcs_apply_seaice.F pkg/seaice/SEAICE.h
 	pkg/seaice/SEAICE_OPTIONS.h pkg/seaice/SEAICE_PARAMS.h
 	pkg/seaice/seaice_ad_check_lev1_dir.h
 	pkg/seaice/seaice_advdiff.F pkg/seaice/seaice_check.F
 	pkg/seaice/seaice_diagnostics_state.F
 	pkg/seaice/seaice_growth.F pkg/seaice/seaice_init_varia.F
 	pkg/seaice/seaice_model.F pkg/seaice/seaice_monitor.F
 	pkg/seaice/seaice_output.F pkg/seaice/seaice_read_pickup.F
 	pkg/seaice/seaice_readparms.F pkg/seaice/seaice_write_pickup.F
 ----------------------------------------------------------------------


Revision 1.118 - (view) (download) (annotate) - [select for diffs]
Wed Apr 27 00:17:26 2011 UTC (13 years ago) by ifenty
Branch: MAIN
Changes since 1.117: +9 -10 lines
Diff to previous 1.117
Fixed 2 bugs in seaice_growth.F

Bug 1: calculation of saltFlux (and saltPlumeFlux) by removing dependence on now-defunct parameter ICE2WATR.
and slightly simplifying the equation.  Now if the sea ice salinity equals the local seawater salinity, the growth of sea ice
will not alter the seawater salinity.

old equation:
           saltFlux(I,J,bi,bj) =
       &            HEFFM(I,J,bi,bj)/SEAICE_deltaTtherm
       &            *SEAICE_salinity*salt(I,j,kSurface,bi,bj)
!      &            *tmpscal1*ICE2WATR*rhoConstFresh

new equation:
           saltFlux(I,J,bi,bj) =
       &            HEFFM(I,J,bi,bj)/SEAICE_deltaTtherm
       &            *SEAICE_salinity*salt(I,j,kSurface,bi,bj)
!      &            *tmpscal1*SEAICE_rhoIce

As ICE2WATR equaled SEAICE_rhoICE/rhoConst and not SEAICE_rhoICE/rhoConstFresh, verification experiments where
rhoConstFresh did not equal rhoConst need to be updated.

Bug 2: replaced hFacC with maskC in the calculation of the turbulent ocean-ice flux (found by Gael) (doesn't change results).


:
: Modified Files:
: 	seaice_growth.F
: ----------------------------------------------------------------------


Revision 1.117 - (view) (download) (annotate) - [select for diffs]
Sat Mar 5 18:06:06 2011 UTC (13 years, 2 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint62u, checkpoint62v, checkpoint62w
Changes since 1.116: +9 -9 lines
Diff to previous 1.116
Start a seaice tracer-like code but for now confinded to ice age


Revision 1.116 - (view) (download) (annotate) - [select for diffs]
Sat Feb 26 00:10:51 2011 UTC (13 years, 2 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint62t
Changes since 1.115: +4 -4 lines
Diff to previous 1.115
redefined actual sea ice age to be ICEAGE/HEFF ifdef SEAICE_AGE_VOL
see Gael's February 25, 2011 message to MITgcm Devel


Revision 1.115 - (view) (download) (annotate) - [select for diffs]
Fri Feb 25 02:31:54 2011 UTC (13 years, 2 months ago) by dimitri
Branch: MAIN
Changes since 1.114: +4 -3 lines
Diff to previous 1.114
change two comments to indicate where ridging takes place for usePW79thermodynamics


Revision 1.114 - (view) (download) (annotate) - [select for diffs]
Thu Feb 24 19:55:07 2011 UTC (13 years, 2 months ago) by dimitri
Branch: MAIN
Changes since 1.113: +35 -35 lines
Diff to previous 1.113
Renaming and reordering of a couple of additions in order to satisfy
global_ocean.cs32x15/results/output.seaice.txt exactly.


Revision 1.113 - (view) (download) (annotate) - [select for diffs]
Wed Feb 23 21:12:45 2011 UTC (13 years, 2 months ago) by dimitri
Branch: MAIN
Changes since 1.112: +401 -124 lines
Diff to previous 1.112
Reverting seaice_growth to v 1.111 in order to have code with exact bit
 compatibility with MITgcm_contrib/ifenty/Fenty_seaice_thermo_code_merge
 CPP option SEAICE_OCN_MELT_ACT_ON_AREA removed in v 1.112 is reintroduced
 runtime flag SEAICEareaFormula is kept but is inactive
 The code is now consistent with
 MITgcm_contrib/ifenty/Fenty_seaice_thermo_code_merge/documentation/Seaice_Growth_Forward_and_Adjoint_comparisons.pdf
Modified Files:
 doc/tag-index pkg/seaice/SEAICE_OPTIONS.h
 pkg/seaice/seaice_diagnostics_init.F
 pkg/seaice/seaice_growth.F
 verification/global_ocean.cs32x15/code/SEAICE_OPTIONS.h
 verification/global_ocean.cs32x15/code_ad/SEAICE_OPTIONS.h


Revision 1.112 - (view) (download) (annotate) - [select for diffs]
Mon Feb 14 23:51:07 2011 UTC (13 years, 2 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint62s
Changes since 1.111: +100 -77 lines
Diff to previous 1.111
- replace d_AREAbyOCN with d_AREA, which is now split in d_AREAbyOCN/d_AREAbyATM_cover/d_AREAbyATM_open
- simplify notations -- d_HEFFbyOCNonICE->d_HEFFbyOCN, d_HEFFbyATMonOCN-> d_HEFFbyATM, etc.
- introduce SEAICEareaFormula run time parameter, which selects the recipe for
  computing the ice cover tendency from effective thickness tendencies. It ranges between 1 and 3:
  -SEAICEareaFormula=1	default in LEGACY branch
  -SEAICEareaFormula=2	default in EVOLUTION branch
  -SEAICEareaFormula=3	Ian Fenty's recipe
- remove 'undef SEAICE_OCN_MELT_ACT_ON_AREA' which may now be achieved using SEAICEareaFormula


Revision 1.111 - (view) (download) (annotate) - [select for diffs]
Thu Feb 10 12:01:18 2011 UTC (13 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.110: +22 -16 lines
Diff to previous 1.110
- for SEAICE_DO_OPEN_WATER_GROWTH, replace Gael's implementation with Ian's.
- the new SEAICE_DO_OPEN_WATER_MELT allows open-water air-sea heat fluxes to also melt ice.


Revision 1.110 - (view) (download) (annotate) - [select for diffs]
Wed Feb 9 12:27:14 2011 UTC (13 years, 3 months ago) by gforget
Branch: MAIN
Changes since 1.109: +39 -13 lines
Diff to previous 1.109
- McPhee formula for Ice-Ocean fluxes (provided by Ian Fenty).


Revision 1.109 - (view) (download) (annotate) - [select for diffs]
Thu Dec 16 08:32:04 2010 UTC (13 years, 4 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint62p, checkpoint62q, checkpoint62r
Changes since 1.108: +148 -53 lines
Diff to previous 1.108
  - first attempt to close budgets by taking into account the freshwater
    flux implied by the sublimation of snow and ice. So far only the
    volume budget is closed successfully.


Revision 1.108 - (view) (download) (annotate) - [select for diffs]
Mon Dec 13 13:54:44 2010 UTC (13 years, 4 months ago) by mlosch
Branch: MAIN
Changes since 1.107: +14 -1 lines
Diff to previous 1.107
add diagnostics for snow precipitation


Revision 1.107 - (view) (download) (annotate) - [select for diffs]
Thu Dec 9 21:35:35 2010 UTC (13 years, 5 months ago) by gforget
Branch: MAIN
Changes since 1.106: +12 -2 lines
Diff to previous 1.106
- avoid recomputation when using pkg/salt_plume
- fix constant seaice salinity (>0) case


Revision 1.106 - (view) (download) (annotate) - [select for diffs]
Fri Dec 3 05:00:37 2010 UTC (13 years, 5 months ago) by gforget
Branch: MAIN
Changes since 1.105: +19 -1 lines
Diff to previous 1.105
- code that handles a constant seaice salinity equal to
  SIsal0 (0 g/kg by default) when the variable salinity is undef.
- allow use of pkg/salt_plume regardless of SEAICE_SALINITY option.


Revision 1.105 - (view) (download) (annotate) - [select for diffs]
Mon Nov 29 23:21:09 2010 UTC (13 years, 5 months ago) by gforget
Branch: MAIN
Changes since 1.104: +147 -110 lines
Diff to previous 1.104
- adjoint related changes.
1) bring store directives up to date.
2) allow adjoint approximations (see SEAICEadjMODE).
3) replace a pair of if/then/else with min/max expressions.


Revision 1.104 - (view) (download) (annotate) - [select for diffs]
Tue Nov 23 22:37:31 2010 UTC (13 years, 5 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62o
Changes since 1.103: +183 -198 lines
Diff to previous 1.103
avoid unused variables; + other editing changes.


Revision 1.103 - (view) (download) (annotate) - [select for diffs]
Tue Nov 23 16:49:09 2010 UTC (13 years, 5 months ago) by mlosch
Branch: MAIN
Changes since 1.102: +4 -3 lines
Diff to previous 1.102
fix another bug in the implemtation of capping too thick ice (I hope
nobody noticed this one)


Revision 1.102 - (view) (download) (annotate) - [select for diffs]
Mon Nov 22 14:01:28 2010 UTC (13 years, 5 months ago) by mlosch
Branch: MAIN
Changes since 1.101: +3 -12 lines
Diff to previous 1.101
remove 2d field that was used for capping to thick ice, now this
contribution is counted more naturally in d_HEFFbyNEG


Revision 1.101 - (view) (download) (annotate) - [select for diffs]
Fri Nov 19 16:21:08 2010 UTC (13 years, 5 months ago) by mlosch
Branch: MAIN
Changes since 1.100: +4 -6 lines
Diff to previous 1.100
  - replace irritating parameters SEAICE_latentWater/Ice and SEAICE_sensHeat
    by something more sensible (parameters that are what their name implies)
  - change some defaults, so that by default exf-parameters are used for
    things like rhoAir, cpAir,latent/sensible heat parameters


Revision 1.100 - (view) (download) (annotate) - [select for diffs]
Fri Nov 19 14:32:11 2010 UTC (13 years, 5 months ago) by mlosch
Branch: MAIN
Changes since 1.99: +12 -5 lines
Diff to previous 1.99
fix bug in conservation of freshwater connected to capping of heff


Revision 1.99 - (view) (download) (annotate) - [select for diffs]
Fri Nov 12 23:10:07 2010 UTC (13 years, 5 months ago) by gforget
Branch: MAIN
Changes since 1.98: +11 -11 lines
Diff to previous 1.98
1) fix ice apparition scenario in case when
   SEAICE_DO_OPEN_WATER_GROWTH is defined.
   Matters for evolution branch only.

2) avoid extensive recomputation in case when
   SEAICE_MULTICATEGORY is undef.
   Issue had appeared in v1.98. No additional lines.


Revision 1.98 - (view) (download) (annotate) - [select for diffs]
Thu Nov 11 16:37:39 2010 UTC (13 years, 6 months ago) by mlosch
Branch: MAIN
Changes since 1.97: +38 -45 lines
Diff to previous 1.97
a few cosmetic changes that reduce the number of lines of code


Revision 1.97 - (view) (download) (annotate) - [select for diffs]
Fri Nov 5 08:10:57 2010 UTC (13 years, 6 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint62n
Changes since 1.96: +7 -7 lines
Diff to previous 1.96
make capping of ice volume conserving by returning the capped ice as
freshwater to EmPmR. This does not change the verification experiments
but will change runs where the capping is acutally active.

Remove comment about "vintage bug" and fix another comment (_cover -> _open)


Revision 1.96 - (view) (download) (annotate) - [select for diffs]
Sun Oct 31 20:07:01 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.95: +22 -38 lines
Diff to previous 1.95
- move areaMin, hiceMin, areaMax to common blocks.
- sort out diagnostics in seaice_growth.F.
- practical approximations in seaice_growth.F adjoint.
- reset TICE to celsius2K when no ice is present.


Revision 1.95 - (view) (download) (annotate) - [select for diffs]
Fri Oct 29 20:36:42 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.94: +6 -2 lines
Diff to previous 1.94
Introducting SEAICE_ZERO_ADHEFFACTUAL that cuts
the potentially troublesome dependency to HEFFACTUAL.


Revision 1.94 - (view) (download) (annotate) - [select for diffs]
Fri Oct 29 00:11:20 2010 UTC (13 years, 6 months ago) by jmc
Branch: MAIN
Changes since 1.93: +3 -7 lines
Diff to previous 1.93
move OPTIONS (formerly locally defined) to SEAICE_OPTIONS.h


Revision 1.93 - (view) (download) (annotate) - [select for diffs]
Mon Oct 25 23:32:36 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.92: +6 -0 lines
Diff to previous 1.92
avoiding recomputations.


Revision 1.92 - (view) (download) (annotate) - [select for diffs]
Mon Oct 25 16:28:59 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.91: +43 -3 lines
Diff to previous 1.91
- treat the case of very thin ice in 'evolution' branch. HEFF<1. _d -5
 implies that we instantaneoously melt the residual ice&snow.
- introduce SEAICE_CAP_ICELOAD. In cases when excessive
 an ice thickness introduces an excessive depletion of the
 (non-linear) free surface, on may use SEAICE_CAP_HEFF (only
 availble in legacy branch) to ultimately limit sIceLoad, or
 directly cap sIceLoad (using SEAICE_CAP_ICELOAD).


Revision 1.91 - (view) (download) (annotate) - [select for diffs]
Thu Oct 21 20:02:33 2010 UTC (13 years, 6 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint62m
Changes since 1.90: +55 -55 lines
Diff to previous 1.90
move back cvs Header and Name to the top.


Revision 1.90 - (view) (download) (annotate) - [select for diffs]
Sat Oct 16 23:28:09 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.89: +96 -50 lines
Diff to previous 1.89
'evolution' branch fixes. No effect on verification
exps results, which all use the 'legacy' branch.

- introduce SEAICE_OCN_MELT_ACT_ON_AREA to switch on/off the
  ocean heat contribution to sea ice cover reduction.
- revise SEAICE_DO_OPEN_WATER_GROWTH that now works ok.
- treat the case of area but no ice/snow.


Revision 1.89 - (view) (download) (annotate) - [select for diffs]
Fri Oct 15 19:10:57 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.88: +140 -90 lines
Diff to previous 1.88

Merging seaice_growth codes -- part 3 -- the merging, at last.

This check-in completes the overall 10/2010 revision and merging process, by

- adding a header that explains unit/sign/naming conventions.
- introducing areaMax parameter that is, for now, hardcoded to 1.
- re-including the 'vintage bug' as a comment -- in case I got it wrong.
- bracketing 'IF (useRelativeWind)' with '#ifdef ALLOW_ATM_WIND'
  consistent with what pkg/exf does.
- merging the '_if.F' features that differ from what is in legacy code:
   - option to actually grow ice over open water, which legacy code
     only virtually takes into account in the area tendency (I think).
   - let melting by ocean reduce area (as melting by atm alone does in legacy).
   - different criteria for rain->snow (incl. as comments).

The added features are bracketed out of legacy code, so this
revision did not affect forward results. A couple cosmetic modifications
changed adjoint results by only three digits. I will only update those.


Revision 1.88 - (view) (download) (annotate) - [select for diffs]
Thu Oct 14 21:42:16 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.87: +231 -180 lines
Diff to previous 1.87
Merging seaice_growth codes -- part 3 -- the merging, at last.

- re-arranging the blocks of code in a more logical order. That is
c =================PART 0: constants and initializations=============
c ===========PART 1: treat pathological cases (post advdiff)===========
c ================PART 2: determine heat fluxes/reservoirs===========
c =========PART 3: determine effective thicknesses increments========
c ==========PART 4: determine ice cover fraction increments=========-
c =============PART 5: determine ice salinity increments=============
c =====LEGACY PART 5.5: treat pathological cases, then do flooding ======
c ===============PART 6: determine ice age increments================
c ==============PART 7: determine ocean model forcing================

This is only cosmetic change, by virtue of the previous revisions.
It does not affect fwd results, which I wont update. On Faulks, with g77:
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea.fd
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea.hb87
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea.salt_plume
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16 16 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice.seaicetd
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  seaice_obcs
In ad tests, the revision did not affect the foward run, but it did the gradients
Y Y Y Y 16> 4<FAIL  lab_sea
Y Y Y Y 16> 4<FAIL  lab_sea.evp
Y Y Y Y 16>16<pass  lab_sea.noseaice
Y Y Y Y 16> 4<FAIL  lab_sea.noseaicedyn
Y Y Y Y 16>16<pass  offline_exf_seaice
The gradient check were precise to 4 digits. They remain so, and improved slightly.
The gradient change due to the revision is at the noise level. There is no additional
recomputations. So we are fine. I will update those results.


Revision 1.87 - (view) (download) (annotate) - [select for diffs]
Thu Oct 14 16:29:44 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.86: +206 -67 lines
Diff to previous 1.86
Merging seaice_growth codes -- part 3 -- the merging, at last.

- introducing HEFFpreTH, HSNWpreTH, and AREApreTH that allows the switch from the 'legacy' code to
  the 'merged' code. In 'legacy' HEFFpreTH=HEFFnm1 (pre adv-diff), HSNWpreTH=hsnow (post adv-diff),
  AREApreTH=areanm1 (pre adv-diff), while HEFF/HSNOW/ARE (post adv-diff) are the stocks that get
  updated by seaice-growth.F, and we treat pathological cases along the way, and at the end
  mostly (after all thermo updates, but for the flooding).
- in the 'merged' way, we start with post-advection HEFF/HSNOW/AREA, treat pathological cases
  at once, and use the result (a self-consistent HEFF/HSNOW/AREA set) as our starting point.
- the CPP switch is SEAICE_GROWTH_LEGACY, which for now is hard-coded to #define.
- cosmetic changes the salinity and age blocks, which will ease the rest of the merging.

- I will update results, although they barely changed. On faulks with g77:
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea.fd
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  lab_sea.hb87
Y Y Y Y>12<16 16 16 16 16 16 16 16 14 16 13 16 12 13 13 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.salt_plume
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16 16 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice.seaicetd
Y Y Y Y>14<16 16 16 16 16 16 16 16 16 14 13 14 14 16 16 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  seaice_obcs
Y Y Y Y 16>14<pass  lab_sea
Y Y Y Y 16>13<pass  lab_sea.evp
Y Y Y Y 16>16<pass  lab_sea.noseaice
Y Y Y Y 16>14<pass  lab_sea.noseaicedyn
Y Y Y Y 16>16<pass  offline_exf_seaice


Revision 1.86 - (view) (download) (annotate) - [select for diffs]
Thu Oct 14 16:05:59 2010 UTC (13 years, 6 months ago) by jmc
Branch: MAIN
Changes since 1.85: +2 -2 lines
Diff to previous 1.85
fix syntax error


Revision 1.85 - (view) (download) (annotate) - [select for diffs]
Wed Oct 13 19:10:42 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.84: +25 -31 lines
Diff to previous 1.84
Merging seaice_growth codes -- part 2 -- actual changes.

- consitently compute QI (hardcoded as 3.02 _d 8 before) as
 Lfusion*SEAICE_rhoIce (3.039 _d 8 using defaults) and
 QS (1.1 _d 8 bfore) as Lfusion*SEAICE_rhoSnow (1.102 _d 8 now),
 with Lfusion=3.34 _d 5.
- in flooding, use rhoConst (rather than 1000.) for sea water density.
=> These constants changes obviously changes all results significantly,
=> so all the relevant experiments results will be updated.
- couple of small cosmetic changes included.


Revision 1.84 - (view) (download) (annotate) - [select for diffs]
Wed Oct 13 15:12:05 2010 UTC (13 years, 6 months ago) by gforget
Branch: MAIN
Changes since 1.83: +83 -138 lines
Diff to previous 1.83
Merging seaice_growth codes -- part 2 -- actual changes.

- changing the sign of heat flux terms (*Qby* that are in ice m)
to match that of the thickness terms (*HEFF*, *HSNOW*, etc.).
Hence everything >0 corresponds to more ice and/or snow.
- rid of inessential arrays. Now it becomes clear that my earlier
additions were a bit overkill. Also it appeared that temporary scalar
can be used instead of saltWtrIce and frWtrIce -- those global
arrays could eventually be removed from SEAICE.h
- compute budget terms (to include in EmPmR, QNET, and
in area derivative) using d_HEFF*/d_HSNOW* tendendcy terms.
This allowed getting rid of d_Qby* arrays. It will allow moving
blocks of code to more logical organization (upcoming revision).

This is only cosmetic change. Yet, on faulks with g77, I got
Y Y Y Y>10<16 16 16 16 16 16 16 16 14 16 13 16 16 16 11 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea
Y Y Y Y>11<16 16 16 16 16 16 16 16 16 16 13 13 16 16 13 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.fd
Y Y Y Y> 3< 8  9  7  6 13 11  8  6  5  7  2  4  6  6  3  4  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.hb87
Y Y Y Y>12<16 16 16 16 16 16 16 16 16 16 13 16 16 16 13 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.salt_plume
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16 16 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice.seaicetd
Y Y Y Y>13<16 16 16 16 16 16 16 16 16 14 14 16 14 16 16 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  seaice_obcs
Y Y Y Y 13> 4<FAIL  lab_sea
Y Y Y Y  4> 4<FAIL  lab_sea.evp
Y Y Y Y 16>16<pass  lab_sea.noseaice
Y Y Y Y 10> 4<FAIL  lab_sea.noseaicedyn
Y Y Y Y 16>16<pass  offline_exf_seaice
So I will update results.


Revision 1.83 - (view) (download) (annotate) - [select for diffs]
Mon Oct 11 05:37:28 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.82: +83 -75 lines
Diff to previous 1.82
Merging seaice_growth codes -- part 2 -- actual changes.

- change the units of flux terms (a_QbyATM, a_QbyICE, etc.)
to ice meters, and make them 'effective' (i.e. multiply by
area or 1-area accordingly) early on, and only go back to
W/m2 once at the end of seaice_growth.F. The point is to avoid
repeated multiplications/divisions by area and scaling factors.

This is only cosmetic change. Yet, on faulks with g77, I got
Y Y Y Y>10<16 16 16 16 16 16 16 16 13 16 13 16 16 16 11 16  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea
Y Y Y Y>11<16 16 16 16 16 16 16 16 12 16 13 13 16 12 12 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.fd
Y Y Y Y> 3< 8 10  9  8 13 12 10  8  6  7  2  4  6  7  3  5  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.hb87
Y Y Y Y>12<16 16 16 16 16 16 16 16 16 14 13 16 16 16 13 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . FAIL  lab_sea.salt_plume
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16>16< .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  offline_exf_seaice
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16  3  4 16 16  3> 3< .  .  .  .  .  .  .  .  .  .  .  . FAIL  offline_exf_seaice.seaicetd
Y Y Y Y>13<16 16 16 16 16 16 16 16 16 14 16 16 14 16 16 14  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  . pass  seaice_obcs
Y Y Y Y 16>14<pass  lab_sea
Y Y Y Y 16>13<pass  lab_sea.evp
Y Y Y Y 16>16<pass  lab_sea.noseaice
Y Y Y Y 16>13<pass  lab_sea.noseaicedyn
Y Y Y Y  6>12<FAIL  offline_exf_seaice
So I will update results.


Revision 1.82 - (view) (download) (annotate) - [select for diffs]
Mon Oct 11 04:06:45 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.81: +20 -8 lines
Diff to previous 1.81
Merging seaice_growth codes -- part 2 -- actual changes.

- change the units of d_HSNWbyOCNonSNW to snow meters.

In warming condition, when ice gets melted, a 1/area
factor appeared to be missing. It is added in V1.82.

This revision is not just a cosmetic one, since
it would change results in warming conditions.

Yet the test experiments results were not changed,
since they all start in January. It appears that
the block of code that does this ice melting is not tested!

I included a comment in seaice_growth.F in this regard. Ultimately
we should set some of the experiments to start e.g. in the spring.


Revision 1.81 - (view) (download) (annotate) - [select for diffs]
Sun Oct 10 02:01:26 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.80: +9 -12 lines
Diff to previous 1.80
Merging seaice_growth codes -- part 2 -- actual changes.

- change the units of d_HSNWbyOCNonSNW to snow meters.

Cosmetic change that does not affect results.


Revision 1.80 - (view) (download) (annotate) - [select for diffs]
Sun Oct 10 01:10:54 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.79: +15 -22 lines
Diff to previous 1.79
Merging seaice_growth codes -- part 2 -- actual changes.

- compute ICE2SNOW as SEAICE_rhoIce/SEAICE_rhoSnow (2.7576) rather
  than 1000.0 _d 0/SEAICE_rhoSnow*ICE2WATR (2.7879 in lab_sea)
>> This obviously changes all results significantly,
>> so all the relevant experiments results will be updated.
- rid of WATR2SNOW
- use convertPRECIP2HI/convertHI2PRECIP to go back and
  forth between precip m/s units and ice meters


Revision 1.79 - (view) (download) (annotate) - [select for diffs]
Sat Oct 9 23:53:18 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.78: +11 -13 lines
Diff to previous 1.78
Merging seaice_growth codes -- part 2 -- actual changes.

use convertQ2HI/convertHI2Q to go back and
forth between W/m2 units and ice meters
in SNOW/ATM interaction too

Cosmetic change that does not affect results.


Revision 1.78 - (view) (download) (annotate) - [select for diffs]
Sat Oct 9 21:57:36 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.77: +10 -16 lines
Diff to previous 1.77
Merging seaice_growth codes -- part 2 -- actual changes.

use convertQ2HI/convertHI2Q to go back and
forth between W/m2 units and ice meters

Again this is only cosmetic change. Yet, on faulks with g77, I got
Y Y Y Y>11<16 16 16 16 16 16 16 16 13 13 13 16 13 16 11 16  .  .  .  .  .  .  .  . FAIL  lab_sea
Y Y Y Y>11<16 16 16 16 16 16 16 16 16 16 13 16 16 16 12 14  .  .  .  .  .  .  .  . FAIL  lab_sea.fd
Y Y Y Y> 2< 8  9  8  7 13 12  9  7  6  7  2  4  6  7  3  4  .  .  .  .  .  .  .  . FAIL  lab_sea.hb87
Y Y Y Y>13<16 16 16 16 16 16 16 16 16 16 13 16 16 16 13 16  .  .  .  .  .  .  .  . pass  lab_sea.salt_plume
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16 16>16< .  .  .  . pass  offline_exf_seaice
Y Y Y Y -- 16 16 16 16 16 16 16 16 22 22 22 22 22 22 22 22 16 16  3  3 16 16  3> 3<FAIL  offline_exf_seaice.seaicetd
Y Y Y Y>13<16 16 16 16 16 16 16 16 16 16 14 16 16 16 14 16  .  .  .  .  .  .  .  . pass  seaice_obcs
Y Y Y Y 16>13<pass  lab_sea
Y Y Y Y 16>13<pass  lab_sea.evp
Y Y Y Y 16>16<pass  lab_sea.noseaice
Y Y Y Y 16>13<pass  lab_sea.noseaicedyn
Y Y Y Y  5> 3<FAIL  offline_exf_seaice

So I will update results.


Revision 1.77 - (view) (download) (annotate) - [select for diffs]
Fri Oct 8 22:08:14 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.76: +8 -18 lines
Diff to previous 1.76
Merging seaice_growth codes -- part 2 -- actual changes.

- get rid of the x1/72.0764 hardcoded factor.
- it is replaced with x( HeatCapacity_Cp*rhoConst/QI )
 that is 1/73.6255 for the default parameters.

This obviously changes all results significantly,
so all the relevant experiments results will be updated.


Revision 1.76 - (view) (download) (annotate) - [select for diffs]
Fri Oct 8 21:17:41 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.75: +76 -65 lines
Diff to previous 1.75
Merging seaice_growth codes -- part 2 -- actual changes.

Summary of what has happened so far:
- the code got cleaned-up (revisions 1.71 to 1.75) while keeping results unchanged.
- the lab_sea forward verification experiments were revised, because they appeared
 to be too fragile to provide a reliable safety net. Typically, minor changes that
 should only affect truncation errors (such as the present check-in) would
 lead to complete failures (loosing ~ all digits) of lab_sea tests even on Faulks
 with g77. The revised tests seem to better discriminate between issues (see below).
 Hopefully the upcoming modifications to seaice_growth.F will further stabilize the tests...

Present check-in:
 switch the unit of QbyIce (i.e. heat that may be extracted by ice from
 the ocean) from ice meters to W/m2, consistent with the other heat stocks.
 This change should only affect truncation errors.

Result on Faulks, with g77:
Y Y Y Y>11<16 16 16 16 16 16 16 16 12 16 13 13 16 16 11 14  .  .  .  .  .  .  .  . FAIL  lab_sea
Y Y Y Y>11<16 16 16 16 16 16 16 16 16 16 13 16 16 16 13 16  .  .  .  .  .  .  .  . FAIL  lab_sea.fd
Y Y Y Y> 2< 8  9  9  8 13 11 10  8  5  6  2  4  6  6  3  4  .  .  .  .  .  .  .  . FAIL  lab_sea.hb87
Y Y Y Y>16<16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16  .  .  .  .  .  .  .  . pass  lab_sea.salt_plume

Comment: except for lab_sea.hb87 (that uses evp) truncation errors lead to the loss
of a few digits. Fair enough. I proceed with the commit and will update the results.

Other results: adjoint lab_sea went fine, seaice_obcs went fine,
offline_exf_seaice went bad (so I update its results too).


Revision 1.75 - (view) (download) (annotate) - [select for diffs]
Fri Oct 1 21:36:45 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
CVS Tags: checkpoint62l
Changes since 1.74: +234 -202 lines
Diff to previous 1.74
Merging seaice_growth codes -- preliminary steps.

Done with this part!

This part, as intended, has not changed anything to the actual computation
results (lab_sea ad&fwd). It was "simply" a matter untying the many
logical knots and rendering what we have been using understandable.

I will give it a rest for a couple days, and let the testing proceed
unaltered over the week end. Then we will make a tag and move on.

The next part will consist of actually changing the computations, which will
change verification experiments results. We will most likely let go of rigorous
backward compatibility soon after the upcoming tagged version.

Cheers.


Revision 1.74 - (view) (download) (annotate) - [select for diffs]
Fri Oct 1 17:07:16 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.73: +33 -24 lines
Diff to previous 1.73
Merging seaice_growth codes -- preliminary steps.

Part 1: replacing variable names with more
meaningful ones, aiming for improved readability
+ introducing variables for the various updates,
aiming for improved modularity.

One more to go, which will just be a clean up,
to wrap up part 1. I promise...


Revision 1.73 - (view) (download) (annotate) - [select for diffs]
Fri Oct 1 05:53:12 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.72: +64 -44 lines
Diff to previous 1.72
Merging seaice_growth codes -- preliminary steps.

Part 1: replacing variable names with more
meaningful ones, aiming for improved readability
+ introducing variables for the various updates,
aiming for improved modularity.

This commit was expected to wrap this part up... well...
I will need one or two more to get out of this maze.


Revision 1.72 - (view) (download) (annotate) - [select for diffs]
Fri Oct 1 01:45:15 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.71: +85 -87 lines
Diff to previous 1.71
Merging seaice_growth codes -- preliminary steps.

Part 1: replacing variable names with more
 meaningful ones, aiming for improved readability
 + introducing variables for the various updates,
 aiming for improved modularity.

Next commit is expected to wrap this part up...


Revision 1.71 - (view) (download) (annotate) - [select for diffs]
Thu Sep 30 02:22:25 2010 UTC (13 years, 7 months ago) by gforget
Branch: MAIN
Changes since 1.70: +144 -100 lines
Diff to previous 1.70
Merging seaice_growth codes -- preliminary steps.

Part 1: replacing variable names with more
  meaningful ones, aiming for improved readability
  + introducing variables for the various updates,
  aiming for improved modularity.

Bare with me...


Revision 1.70 - (view) (download) (annotate) - [select for diffs]
Thu Sep 23 22:46:24 2010 UTC (13 years, 7 months ago) by jmc
Branch: MAIN
Changes since 1.69: +3 -3 lines
Diff to previous 1.69
new S/R seaice_solve4temp.F: this is the merged version of Ian Fenty
code (seaice_budget_ice_if.F) which enable to recover old standard
code (seaice_budget_ice.F) when option USE_ORIGINAL_SBI is defined.


Revision 1.69 - (view) (download) (annotate) - [select for diffs]
Tue Sep 14 15:14:07 2010 UTC (13 years, 7 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint62k
Changes since 1.68: +993 -993 lines
Diff to previous 1.68
removing ^M from end of file
please "select for diffs" and compare with 1.67


Revision 1.68 - (view) (download) (annotate) - [select for diffs]
Fri Sep 3 23:33:49 2010 UTC (13 years, 8 months ago) by dimitri
Branch: MAIN
Changes since 1.67: +993 -958 lines
Diff to previous 1.67
SEAICE_AGE_VOL: adding option to use volume instead of area for integrating SEAICE_AGE


Revision 1.67 - (view) (download) (annotate) - [select for diffs]
Tue Jul 6 00:14:29 2010 UTC (13 years, 10 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint62i, checkpoint62j
Changes since 1.66: +7 -1 lines
Diff to previous 1.66
Fixing bug in treatment of SaltPlumeSouthernOcean
Flag should be applied prior to modifying surfaceForcingS
Moved SaltPlumeSouthernOcean to seaice_growth.F


Revision 1.66 - (view) (download) (annotate) - [select for diffs]
Sun Jun 27 20:19:16 2010 UTC (13 years, 10 months ago) by jmc
Branch: MAIN
Changes since 1.65: +46 -17 lines
Diff to previous 1.65
account for melting in seaice age evolution: tested by Pierre


Revision 1.65 - (view) (download) (annotate) - [select for diffs]
Tue Jun 22 23:19:15 2010 UTC (13 years, 10 months ago) by jmc
Branch: MAIN
Changes since 1.64: +74 -75 lines
Diff to previous 1.64
remove "recip_QS" (not used and wrong)


Revision 1.64 - (view) (download) (annotate) - [select for diffs]
Wed Sep 30 15:46:36 2009 UTC (14 years, 7 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61w, checkpoint61x, checkpoint61y, checkpoint61z, checkpoint62, checkpoint62a, checkpoint62b, checkpoint62c, checkpoint62d, checkpoint62e, checkpoint62f, checkpoint62g, checkpoint62h
Changes since 1.63: +16 -1 lines
Diff to previous 1.63
re-introduce global field frWtrAtm for the case of
ALLOW_MEAN_SFLUX_COST_CONTRIBUTION defined


Revision 1.63 - (view) (download) (annotate) - [select for diffs]
Mon Jul 20 07:42:09 2009 UTC (14 years, 9 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61t, checkpoint61u, checkpoint61v
Changes since 1.62: +10 -14 lines
Diff to previous 1.62
 revert to version 1.61, what was I thinking?


Revision 1.62 - (view) (download) (annotate) - [select for diffs]
Mon Jul 20 07:30:58 2009 UTC (14 years, 9 months ago) by mlosch
Branch: MAIN
Changes since 1.61: +14 -10 lines
Diff to previous 1.61
 - move if-statement out of loop for better vectorization


Revision 1.61 - (view) (download) (annotate) - [select for diffs]
Wed Jun 24 08:01:43 2009 UTC (14 years, 10 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61r, checkpoint61s
Changes since 1.60: +72 -70 lines
Diff to previous 1.60
 third and step of replacing 3D versions of UICE,VICE,HEFF,AREA by 2D
 versions. Keep your fingers crossed.


Revision 1.60 - (view) (download) (annotate) - [select for diffs]
Mon Jun 22 15:57:45 2009 UTC (14 years, 10 months ago) by mlosch
Branch: MAIN
Changes since 1.59: +22 -22 lines
Diff to previous 1.59
first steps in cleaning up the 3-time levels of UICE,VICE,HEFF,AREA:
  1. introduce fields for time step (N-1 = *Nm1)
  2. do not use levels 2 and 3 anymore (but they are still around)

these changes probably break the adjoint, but the pickup is still
working, so I am stopping now to give P. a chance to fix the adjoint
if necessary and then I will get rid of the 3D fields altogether
carefully taking into account the pickup (not clear how).


Revision 1.59 - (view) (download) (annotate) - [select for diffs]
Sun Jun 21 23:08:48 2009 UTC (14 years, 10 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint61q
Changes since 1.58: +79 -15 lines
Diff to previous 1.58
o adding JM's doc/diags_changes.txt:
  a very useful summary that I refer to all the time
o adding pkg/seaice diagnostics for atmospheric and oceanic
   heat flux and for atmospheric and oceanic ice growth


Revision 1.58 - (view) (download) (annotate) - [select for diffs]
Thu Jun 4 17:27:17 2009 UTC (14 years, 11 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint61p
Changes since 1.57: +6 -8 lines
Diff to previous 1.57
Added SEAICE_CLIM_AIR code, which permits modulation of surface air
temperature and humidity over sea ice based on climatological values.


Revision 1.57 - (view) (download) (annotate) - [select for diffs]
Wed Jun 3 20:54:47 2009 UTC (14 years, 11 months ago) by dimitri
Branch: MAIN
Changes since 1.56: +1 -5 lines
Diff to previous 1.56
This check is redundant.  It is already included in seaice_check.F


Revision 1.56 - (view) (download) (annotate) - [select for diffs]
Tue May 26 16:39:57 2009 UTC (14 years, 11 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint61o
Changes since 1.55: +12 -5 lines
Diff to previous 1.55
adding HO to parameters that can be separately specified in North and South


Revision 1.55 - (view) (download) (annotate) - [select for diffs]
Wed Mar 18 14:35:37 2009 UTC (15 years, 1 month ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61l, checkpoint61m, checkpoint61n
Changes since 1.54: +3 -3 lines
Diff to previous 1.54
forgot a few instances of 330., when replace this number by a runtime
parameter SEAICE_rhoSnow. There is still one instance in
cost_ice_test.F, which I am not touching


Revision 1.54 - (view) (download) (annotate) - [select for diffs]
Wed Mar 18 14:02:25 2009 UTC (15 years, 1 month ago) by mlosch
Branch: MAIN
Changes since 1.53: +10 -10 lines
Diff to previous 1.53
simplify and operation that does not affect the verification
experiments (I wonder why)


Revision 1.53 - (view) (download) (annotate) - [select for diffs]
Tue Mar 17 10:21:56 2009 UTC (15 years, 1 month ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61j, checkpoint61k
Changes since 1.52: +2 -2 lines
Diff to previous 1.52
turn a few hard wired parameters into run time parameters
this does not change any results


Revision 1.52 - (view) (download) (annotate) - [select for diffs]
Fri Feb 13 21:59:17 2009 UTC (15 years, 2 months ago) by heimbach
Branch: MAIN
Changes since 1.51: +9 -9 lines
Diff to previous 1.51
Update tamc.h for single-prec comlev option


Revision 1.51 - (view) (download) (annotate) - [select for diffs]
Wed Dec 17 06:14:50 2008 UTC (15 years, 4 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint61g, checkpoint61h, checkpoint61i
Changes since 1.50: +3 -2 lines
Diff to previous 1.50
changing ice age to effective ice age


Revision 1.50 - (view) (download) (annotate) - [select for diffs]
Wed Dec 17 03:33:30 2008 UTC (15 years, 4 months ago) by dimitri
Branch: MAIN
Changes since 1.49: +14 -1 lines
Diff to previous 1.49
added sea ice age tracer;  #define SEAICE_AGE in SEAICE_PARAMS.h


Revision 1.49 - (view) (download) (annotate) - [select for diffs]
Sat Oct 11 20:37:05 2008 UTC (15 years, 7 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint61e, checkpoint61f
Changes since 1.48: +28 -31 lines
Diff to previous 1.48
Make frWtrAtm global for FW balancing in presence of sea-ice,
and I need it outside of seaice code.
Also move DIAGNOSTICS_FILL(frWtrAtm ...
(hope I'm not making a betise).


Revision 1.48 - (view) (download) (annotate) - [select for diffs]
Tue Sep 9 07:04:33 2008 UTC (15 years, 8 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint61d
Changes since 1.47: +4 -4 lines
Diff to previous 1.47
fix a bug in diagnostic SIatmFW and changed the units from m/s to kg/m^2/s


Revision 1.47 - (view) (download) (annotate) - [select for diffs]
Thu Mar 27 19:49:07 2008 UTC (16 years, 1 month ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint59p, checkpoint59q, checkpoint59r, checkpoint60, checkpoint61, checkpoint61a, checkpoint61b, checkpoint61c
Changes since 1.46: +15 -7 lines
Diff to previous 1.46
Rearrange some almost impenetrable #ifdef blocks which
reach across I,J loops (wow).


Revision 1.46 - (view) (download) (annotate) - [select for diffs]
Tue Jan 29 14:00:56 2008 UTC (16 years, 3 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint59n, checkpoint59o
Changes since 1.45: +3 -3 lines
Diff to previous 1.45
fix two diagnostics after someone removed the overlaps of GHEFF


Revision 1.45 - (view) (download) (annotate) - [select for diffs]
Mon Jan 21 17:39:11 2008 UTC (16 years, 3 months ago) by heimbach
Branch: MAIN
Changes since 1.44: +15 -13 lines
Diff to previous 1.44
o Update stores after recent IF (DIFFERENT_MULTIPLE ...
o re-initialise to break some dependencies (not sure if all correct)
o turn some scalares into tw-dim.


Revision 1.44 - (view) (download) (annotate) - [select for diffs]
Thu Jan 17 23:18:39 2008 UTC (16 years, 3 months ago) by dimitri
Branch: MAIN
Changes since 1.43: +1 -3 lines
Diff to previous 1.43
removed uneeded arrays KGEO, GWATX, and GWATY from SEAICE_CGRID code


Revision 1.43 - (view) (download) (annotate) - [select for diffs]
Fri Jan 11 19:59:28 2008 UTC (16 years, 4 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59m
Changes since 1.42: +4 -16 lines
Diff to previous 1.42
o pkg/seaice: use different time constant for melting (SEAICE_gamma_t)
  and freezing (SEAICE_gamma_t_frz) ice due to mixed layer temperature


Revision 1.42 - (view) (download) (annotate) - [select for diffs]
Thu Jan 10 23:32:15 2008 UTC (16 years, 4 months ago) by dimitri
Branch: MAIN
Changes since 1.41: +16 -8 lines
Diff to previous 1.41
o pkg/seaice/seaice_growth.F: use a different time constant for freezing
  ice due to supercooled sea water, hardwired to SEAICE_deltaTtherm/0.1


Revision 1.41 - (view) (download) (annotate) - [select for diffs]
Fri Dec 14 21:52:02 2007 UTC (16 years, 4 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59l
Changes since 1.40: +11 -1 lines
Diff to previous 1.40
  - reformulated availHeat in seaice_growth.F to be independent of AREA


Revision 1.40 - (view) (download) (annotate) - [select for diffs]
Thu Dec 6 05:23:41 2007 UTC (16 years, 5 months ago) by dimitri
Branch: MAIN
Changes since 1.39: +21 -1 lines
Diff to previous 1.39
o pkg/exf: added useRelativeWind EXF_PARAM.h option for subtracting U/VVEL
  or U/VICE from U/VWIND before computing U/VSTRESS


Revision 1.39 - (view) (download) (annotate) - [select for diffs]
Wed Dec 5 15:37:12 2007 UTC (16 years, 5 months ago) by dimitri
Branch: MAIN
Changes since 1.38: +25 -51 lines
Diff to previous 1.38
pkg/seaice: removed some unused halos


Revision 1.38 - (view) (download) (annotate) - [select for diffs]
Wed Dec 5 07:28:29 2007 UTC (16 years, 5 months ago) by dimitri
Branch: MAIN
Changes since 1.37: +8 -8 lines
Diff to previous 1.37
o pkg/seaice: removed SEAICE_FFIELDS.h and seaice_get_forcing.F
  seaice forcing fields can now be read only through pkg/exf


Revision 1.37 - (view) (download) (annotate) - [select for diffs]
Wed Nov 28 00:18:17 2007 UTC (16 years, 5 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59k
Changes since 1.36: +22 -13 lines
Diff to previous 1.36
added pkg/salt_plume by gathering code, which were previously
spread around various files in model/inc and model/src
results remain numerically identical to before, as a first step
towards adding more options, etc., to this package


Revision 1.36 - (view) (download) (annotate) - [select for diffs]
Wed Oct 3 19:41:34 2007 UTC (16 years, 7 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint59i, checkpoint59j
Changes since 1.35: +40 -6 lines
Diff to previous 1.35
o add new diagnostics to seaice: advective, diffusive fluxes (only for
  multidim-advection, for scheme 2 they are not filled) and transports,
  thermodynamic growth rates


Revision 1.35 - (view) (download) (annotate) - [select for diffs]
Mon Oct 1 13:37:03 2007 UTC (16 years, 7 months ago) by jmc
Branch: MAIN
Changes since 1.34: +2 -2 lines
Diff to previous 1.34
Change EmPmR units: from m/s to kg/m2/s


Revision 1.34 - (view) (download) (annotate) - [select for diffs]
Fri Sep 28 19:41:15 2007 UTC (16 years, 7 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint59h
Changes since 1.33: +6 -5 lines
Diff to previous 1.33
Add CPP option to remove code for precise gradient checks (for testing)
SEAICE_EXCLUDE_FOR_EXACT_AD_TESTING


Revision 1.33 - (view) (download) (annotate) - [select for diffs]
Wed Sep 26 04:54:49 2007 UTC (16 years, 7 months ago) by heimbach
Branch: MAIN
Changes since 1.32: +3 -3 lines
Diff to previous 1.32
Update lab_sea adjoint output which now reverts to LSR solver and
SEAICE_SALT.


Revision 1.32 - (view) (download) (annotate) - [select for diffs]
Wed Sep 26 04:12:40 2007 UTC (16 years, 7 months ago) by heimbach
Branch: MAIN
Changes since 1.31: +28 -5 lines
Diff to previous 1.31
Include SEAICE_SALINITY in adjoint.


Revision 1.31 - (view) (download) (annotate) - [select for diffs]
Sat Sep 22 03:11:03 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.30: +8 -2 lines
Diff to previous 1.30
Committing An Nguyen's modifications to SALT_PLUME code.  This includes
addition of a saltPlumeFlux array to FFIELDS and of routine plumefrac.F


Revision 1.30 - (view) (download) (annotate) - [select for diffs]
Fri Sep 21 19:13:28 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.29: +2 -2 lines
Diff to previous 1.29
oops!  * -> /  ... at least I found it before JM got to it ;-)


Revision 1.29 - (view) (download) (annotate) - [select for diffs]
Fri Sep 21 13:29:56 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.28: +2 -1 lines
Diff to previous 1.28
initialization of variable saltfluxadjust


Revision 1.28 - (view) (download) (annotate) - [select for diffs]
Fri Sep 21 06:46:30 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.27: +3 -3 lines
Diff to previous 1.27
define SEAICE_salinity as a fraction of the model's surface level salinity


Revision 1.27 - (view) (download) (annotate) - [select for diffs]
Fri Sep 21 00:18:48 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.26: +15 -16 lines
Diff to previous 1.26
reordering for some extreme scenarios


Revision 1.26 - (view) (download) (annotate) - [select for diffs]
Thu Sep 20 14:32:37 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.25: +2 -6 lines
Diff to previous 1.25
initial HSALT set to ICE2WATR*rhoConstFresh*SEAICE_salinity


Revision 1.25 - (view) (download) (annotate) - [select for diffs]
Tue Sep 18 21:18:12 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.24: +16 -4 lines
Diff to previous 1.24
A simple HSALT time stepping equation has been checked in.


Revision 1.24 - (view) (download) (annotate) - [select for diffs]
Tue Sep 18 14:43:27 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
Changes since 1.23: +18 -5 lines
Diff to previous 1.23
Updating treatment of sea ice salinity.  HSALT units are now g / m^2,


Revision 1.23 - (view) (download) (annotate) - [select for diffs]
Sat Sep 15 01:38:59 2007 UTC (16 years, 7 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59g
Changes since 1.22: +6 -6 lines
Diff to previous 1.22
adding ice salinity HSALT as a prognostic variable


Revision 1.22 - (view) (download) (annotate) - [select for diffs]
Thu Aug 23 19:13:10 2007 UTC (16 years, 8 months ago) by jmc
Branch: MAIN
Changes since 1.21: +2 -2 lines
Diff to previous 1.21
replace "recip_rhoConst*horiVertRatio" by mass2rUnit
and     "rhoConst*recip_horiVertRatio" by rUnit2mass


Revision 1.21 - (view) (download) (annotate) - [select for diffs]
Sun Aug 19 02:31:37 2007 UTC (16 years, 8 months ago) by heimbach
Branch: MAIN
CVS Tags: checkpoint59f
Changes since 1.20: +53 -8 lines
Diff to previous 1.20
Break a few loops and CADJ STORE.


Revision 1.20 - (view) (download) (annotate) - [select for diffs]
Wed Jul 18 22:26:05 2007 UTC (16 years, 9 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint59e
Changes since 1.19: +8 -6 lines
Diff to previous 1.19
  * commented out cap of HICE: it helps keep ice thinner
  * reintroduced cap of HEFF via MAX_HEFF and SEAICE_CAP_HEFF option


Revision 1.19 - (view) (download) (annotate) - [select for diffs]
Fri Jul 6 02:37:34 2007 UTC (16 years, 10 months ago) by dimitri
Branch: MAIN
Changes since 1.18: +6 -4 lines
Diff to previous 1.18
  * replaced dRf(1) with dRf(kSurface)*hFacC(kSurface) in seaice_growth.F
  * added SEAICE_availHeatFrac, which specifies fraction of surface level
    heat content used to melt or grow ice (this is a placeholder until
    Ian checks in code meant to reduce adjoint sensitivities).


Revision 1.18 - (view) (download) (annotate) - [select for diffs]
Sat Jun 30 21:21:46 2007 UTC (16 years, 10 months ago) by dimitri
Branch: MAIN
Changes since 1.17: +3 -2 lines
Diff to previous 1.17
removing bug fix:
  24-Jun-07: bug fix for SEAICE_salinity: salt rejection was being double-counted
recovering previous version of verification/lab_sea/results/output* files
  SEAICE_salinity=0 should not change results if fix is correct
changing sign of saltWtrIce to saltFlux
  it should oppose contribution to EmPmR, which has opposite sign convention


Revision 1.17 - (view) (download) (annotate) - [select for diffs]
Sun Jun 24 14:21:36 2007 UTC (16 years, 10 months ago) by dimitri
Branch: MAIN
Changes since 1.16: +1 -2 lines
Diff to previous 1.16
bug fix for SEAICE_salinity: salt rejection was being double-counted


Revision 1.16 - (view) (download) (annotate) - [select for diffs]
Fri Jun 22 06:41:10 2007 UTC (16 years, 10 months ago) by dimitri
Branch: MAIN
Changes since 1.15: +24 -11 lines
Diff to previous 1.15
o pkg/seaice: added computation of saltFlux in seaice_growth;
   For time being, sea ice salinity is assumed constant
   contribution of snow flooding to freshening of sea ice is neglected.
   SEAICE_salinity is set in SEAICE_PARM01 of data.seaice and it
   defaults to 0.0 in order to maintain backward compatibility.
   Typical values for SEAICE_salinity are 4 to 10 g/kg.


Revision 1.15 - (view) (download) (annotate) - [select for diffs]
Wed May 30 23:34:22 2007 UTC (16 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint59c, checkpoint59d
Changes since 1.14: +17 -1 lines
Diff to previous 1.14
add diagnostics for Net fresh-water flux from the atmosphere.


Revision 1.14 - (view) (download) (annotate) - [select for diffs]
Fri May 18 02:46:42 2007 UTC (16 years, 11 months ago) by jmc
Branch: MAIN
Changes since 1.13: +3 -1 lines
Diff to previous 1.13
remove ALLOW_SEAICE from exf pkg files and add #define ALLOW_RUNOFF
in SEAICE_OPTIONS.h


Revision 1.13 - (view) (download) (annotate) - [select for diffs]
Mon Apr 30 00:15:10 2007 UTC (17 years ago) by jmc
Branch: MAIN
CVS Tags: checkpoint59a, checkpoint59b
Changes since 1.12: +9 -1 lines
Diff to previous 1.12
add all needed EXF #ifdef and define them in SEAICE_OPTIONS.h if not using EXF


Revision 1.12 - (view) (download) (annotate) - [select for diffs]
Fri Apr 27 15:50:14 2007 UTC (17 years ago) by jmc
Branch: MAIN
Changes since 1.11: +1 -3 lines
Diff to previous 1.11
make pLoad & sIceLoad always available (but still only used if
      ATMOSPHERIC_LOADING is #define).


Revision 1.11 - (view) (download) (annotate) - [select for diffs]
Mon Apr 16 22:43:01 2007 UTC (17 years ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint59
Changes since 1.10: +4 -4 lines
Diff to previous 1.10
- add myThid to argument list of seaice_budget_ice/ocean


Revision 1.10 - (view) (download) (annotate) - [select for diffs]
Tue Jan 9 13:33:49 2007 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint58u_post, checkpoint58v_post, checkpoint58w_post, checkpoint58x_post, checkpoint58y_post
Changes since 1.9: +13 -10 lines
Diff to previous 1.9
fix a bug in the flooding algorithm: turn off the snow machine


Revision 1.9 - (view) (download) (annotate) - [select for diffs]
Thu Dec 21 10:50:46 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
CVS Tags: checkpoint58t_post
Changes since 1.8: +11 -13 lines
Diff to previous 1.8
more comments, try to clarify the use of precip(itation)


Revision 1.8 - (view) (download) (annotate) - [select for diffs]
Wed Dec 20 20:49:12 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
Changes since 1.7: +143 -97 lines
Diff to previous 1.7
rewritting parts of growth in an effort to make it comprehensable:
- give resonalbe variable names
- avoid reusing the same variable for different purposes (still some
  instances left for the next time around)
- lets hope for the adjoint (but that should actually be happier now)


Revision 1.7 - (view) (download) (annotate) - [select for diffs]
Wed Dec 20 12:25:15 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
Changes since 1.6: +22 -25 lines
Diff to previous 1.6
o fix multi-category seaice:
 - change cpp flag SEAICE_MULTILEVEL to more meaningful name:
   SEAICE_MULTICATEGORY
 - fix short wave heat flux
o replace field areaLoc by scalar variable


Revision 1.6 - (view) (download) (annotate) - [select for diffs]
Tue Dec 19 18:57:10 2006 UTC (17 years, 4 months ago) by dimitri
Branch: MAIN
Changes since 1.5: +8 -2 lines
Diff to previous 1.5
transfering all regularization of local ice thickness to seaice_growth
as a first step towards possibly getting rid of A22 alltogether


Revision 1.5 - (view) (download) (annotate) - [select for diffs]
Tue Dec 19 16:00:39 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
Changes since 1.4: +2 -2 lines
Diff to previous 1.4
fix bug reported by DM


Revision 1.4 - (view) (download) (annotate) - [select for diffs]
Fri Dec 15 15:48:23 2006 UTC (17 years, 4 months ago) by heimbach
Branch: MAIN
Changes since 1.3: +5 -6 lines
Diff to previous 1.3
Just remove one CADJ STORE
(and add a comment marking sensitive piece of code)


Revision 1.3 - (view) (download) (annotate) - [select for diffs]
Fri Dec 15 15:04:53 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
Changes since 1.2: +118 -119 lines
Diff to previous 1.2
- replace area(i,j,3,bi,bj) by a local array.
- rearrange routine a little more (Patrick is going to love this, but
  I moved the store directives as well): move the budget computations
  (seaice_budget_ocean/ice) to the beginning of the routine. Results
  are not changed and I don't expect any problems for the adjoint
  because the switched blocks are completely independent.


Revision 1.2 - (view) (download) (annotate) - [select for diffs]
Thu Dec 14 22:31:18 2006 UTC (17 years, 4 months ago) by heimbach
Branch: MAIN
Changes since 1.1: +39 -18 lines
Diff to previous 1.1
Updating seaice adjoint, step 1 (everything, except SEAICE_EVP).


Revision 1.1 - (view) (download) (annotate) - [select for diffs]
Thu Dec 14 08:36:20 2006 UTC (17 years, 4 months ago) by mlosch
Branch: MAIN
 overhaul of thermodynamics
- growth.F and groatb.F are replaced by new routine seaice_growth.F
- budget.F is replaced by two new routines seaice_budget_ocean/ice.F
- move a few global fields out of SEAICE.h into seaice_growth.F and
  make them 2D (FICE/QNETO/ ...)
- remove FO (it is the same as QNETO)
- introduce a few local fields to avoid modifying external fields such
  as atemp, etc.

  lab_sea does not change, but hopefully it will be easier for Patrick
  do the adjoint


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.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.22