Models Methods Software

Dan Hughes

Yet Even More NASA/GISS ModelE Coding

While pursing the NASA/GISS ModelE coding as part of getting back to the dissipation questions that have come up on Lucia’s Blog in this thread, I ran across yet even more interesting coding. The thread at Lucia’s is related to the posts on this Blog here, here, and here. The dissipation questions come up now and then in several Blogs.

But first, a short diversion.

A search in the NASA/GISS ModelE source code for ‘dissipation’ found the following coding in several Block Data routines.

blkdat.f
c
c --- 'thkdff' = diffusion velocity (m/s) for thickness diffusion
c --- 'veldff' = diffusion velocity (m/s) for momentum dissipation
c --- 'temdff' = diffusion velocity (m/s) for temp/salin. mixing
c --- 'viscos' is nondimensional, used in deformation-dependent viscosity
c --- 'vertmx' = scale velocity for vertical momentum mixing (m/s)
c data thkdff/.005/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./
data thkdff/.10/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./

blkdh2.f
c
c --- 'thkdff' = diffusion velocity (cm/s) for thickness diffusion
c --- 'veldff' = diffusion velocity (cm/s) for momentum dissipation
c --- 'temdff' = diffusion velocity (cm/s) for temp/salin. mixing
c --- 'viscos' is nondimensional, used in deformation-dependent viscosity
c --- 'vertmx' = scale velocity for vertical momentum mixing (m/s)
data thkdff/.002/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./
css data thkdff/.005/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./

blkdt5.f
c
c --- 'thkdff' = diffusion velocity (cm/s) for thickness diffusion
c --- 'veldff' = diffusion velocity (cm/s) for momentum dissipation
c --- 'temdff' = diffusion velocity (cm/s) for temp/salin. mixing
c --- 'viscos' is nondimensional, used in deformation-dependent viscosity
c --- 'vertmx' = scale velocity for vertical momentum mixing (m/s)
data thkdff/.002/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./
css data thkdff/.005/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./

blkdtf.f
c
c --- 'thkdff' = diffusion velocity (cm/s) for thickness diffusion
c --- 'veldff' = diffusion velocity (cm/s) for momentum dissipation
c --- 'temdff' = diffusion velocity (cm/s) for temp/salin. mixing
c --- 'viscos' is nondimensional, used in deformation-dependent viscosity
c --- 'vertmx' = scale velocity for vertical momentum mixing (m/s)
css data thkdff/.002/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./
data thkdff/.005/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./

blkdth.f
c
c --- 'thkdff' = diffusion velocity (cm/s) for thickness diffusion
c --- 'veldff' = diffusion velocity (cm/s) for momentum dissipation
c --- 'temdff' = diffusion velocity (cm/s) for temp/salin. mixing
c --- 'viscos' is nondimensional, used in deformation-dependent viscosity
c --- 'vertmx' = scale velocity for vertical momentum mixing (m/s)
data thkdff/.002/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./
css data thkdff/.005/,veldff/.1/,temdff/.02/,viscos/0.3/,vertmx/0./

These all refer to various parameterizations. The search for ‘dissipation’ turned up ‘veldff’ along with the other parameters. Note that momentum dissipation is not a physical concept that appears in the continuous equations and this dissipation is not related to the dissipation to thermal energy of the original issues.

The important thing here is that the

'thkdff' = diffusion velocity (cm/s) for thickness diffusion

parameter has taken on several values and, more importantly, has different values in the different Block Data routines. I can’t get leading spaces to be preserved, so you’ll have to carefully check the ‘data’ statements, the last two lines in each of the above.

More bad NASA/GISS ModelE coding, in my opinion.

Advertisements

January 10, 2009 - Posted by | Verification | , , ,

1 Comment »

  1. […] Yet Even More NASA/GISS ModelE Coding […]

    Pingback by Coding Standards Finally Appear « Models Methods Software | November 8, 2010 | Reply


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: