[MITgcm-devel] another diagnostics puzzle

Jean-Michel Campin jmc at ocean.mit.edu
Wed Jun 6 19:20:22 EDT 2007


Hi Martin,

OK, I can confirm my suspicion. 
What I did not realize, is that it was only the 1rst output
(because I did not read carefully your 1rst e-mail), but now
everything make sense, since DO_THE_MODEL_IO is also 
called from INITIALISE_VARIA.
And you don't see the double counting in SIuice,SIvice
because they are initialised to zero.

I use this "hack" to get the right 1rst snap-shot:
pkg/seaice/seaice_do_diags.F, around line 384:

383 #ifdef ALLOW_DIAGNOSTICS
384 c     IF ( useDiagnostics ) THEN
385       IF ( useDiagnostics .AND. myIter.NE.nIter0 ) THEN

but it is not the "right" thing to do (therefore, I am not
going to check-in this), since we still have this famous 
"1 time-step" shift mismatch.

Jean-Michel

On Wed, Jun 06, 2007 at 05:03:14PM -0400, Jean-Michel Campin wrote:
> Hi Martin,
> 
> What I suspect is that the seaice state-variable diagnostics 
> are filled from the wrong place, meaning from do_the_model_io.F ;
> If I compare with what is done in pkg/thsice,
> do_the_model_io.F calls thsice_output (snap-shot but no diagnostics)
> but thsice_diagnostics_fill (state-variable) is called 
> from do_statevars_diags.
> 
> it would be better to do it in the same (right) way; 
> might find a way to go arround this by adding some if/conditions
> in seaice_do_diags but I don't have time right now
> to try different possible hack.
> 
> I will do a short test to confirm that this is the cause
> of this problem (since it's still not completely clear to me).
> 
> Jean-Michel
> 
> On Wed, Jun 06, 2007 at 05:41:09PM +0200, Martin Losch wrote:
> > Hi Andrea and  others,
> > 
> > the if statement is only there for SIsigI,SIsigII,SIpress,SIzeta,SIeta.
> > All others don't have one. I have put an if-statement before the  
> > SIhsnow call, but that does not change anything.
> > 
> > the diagnostics_status-files don't tell me much, except that the  
> > three fields in question are the first three fields in my list of  
> > diagnostics, but the order doesn't matter (I tried with a different  
> > order and the result is the same).
> > 
> > Oh, and an important detail was missing: I use a negative frequency  
> > (that is -1 in my test case by before I was trying much longer  
> > intervals, eg. frequency = -21600) to get snap shots. for averaging,  
> > the output is OK.
> > 
> > Martin
> > PS I'll attach the two diagnostics_status files, maybe you can see  
> > something there:
> 
> 
> 
> > 
> > On 6 Jun 2007, at 17:13, Andrea Molod wrote:
> > 
> > >hi martin,
> > >
> > >On Wed, 6 Jun 2007, Martin Losch wrote:
> > >
> > >>I am seeing a strange behavior of the diagnostics package for seaice:
> > >>When I use averaging (only) the first field that is written (both  
> > >>by mnc and mdsio) is wrong (by a factor of 2, I only noticed  
> > >>because my AREA was suddenly 2 instead of 1=max(AREA)). This is  
> > >>true for Siarea,SIheff,SIhsnow, but not for SIuice,SIvice,SIpress,  
> > >>etc. I don't recognize a pattern in this, do you?
> > >
> > >the ones that are ok have an if-loop around the 'fill' sequence  
> > >(call diagnostics_fill....) checking whether 'diagnostics_is_on',  
> > >the ones that
> > >are not ok don't. i don't know about your configuration, etc... but  
> > >there
> > >are a few reasons why the diagnostics gets turned 'off' temporarily  
> > >during
> > >the run. i bet if you put that call (if diagnostics_is_on(...)  )  
> > >in there
> > >the behavior will be ok.
> > >
> > >my 2 cents.
> > >
> > >andrea
> > >_______________________________________________
> > >MITgcm-devel mailing list
> > >MITgcm-devel at mitgcm.org
> > >http://mitgcm.org/mailman/listinfo/mitgcm-devel
> > 
> 
> > _______________________________________________
> > MITgcm-devel mailing list
> > MITgcm-devel at mitgcm.org
> > http://mitgcm.org/mailman/listinfo/mitgcm-devel
> 
> _______________________________________________
> MITgcm-devel mailing list
> MITgcm-devel at mitgcm.org
> http://mitgcm.org/mailman/listinfo/mitgcm-devel



More information about the MITgcm-devel mailing list