Back to home page

MITgcm

 
 

    


File indexing completed on 2018-03-02 18:37:38 UTC

view on githubraw file Latest commit 672ec4d5 on 2016-12-01 17:05:48 UTC
672ec4d5cf Jean*0001 <!--
                0002 
                0003 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                0004 !!                                                                   !!
                0005 !!                   GNU General Public License                      !!
                0006 !!                                                                   !!
                0007 !! This file is part of the Flexible Modeling System (FMS).          !!
                0008 !!                                                                   !!
                0009 !! FMS is free software; you can redistribute it and/or modify       !!
                0010 !! it and are expected to follow the terms of the GNU General Public !!
                0011 !! License as published by the Free Software Foundation.             !!
                0012 !!                                                                   !!
                0013 !! FMS is distributed in the hope that it will be useful,            !!
                0014 !! but WITHOUT ANY WARRANTY; without even the implied warranty of    !!
                0015 !! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the     !!
                0016 !! GNU General Public License for more details.                      !!
                0017 !!                                                                   !!
                0018 !! You should have received a copy of the GNU General Public License !!
                0019 !! along with FMS; if not, write to:                                 !!
                0020 !!          Free Software Foundation, Inc.                           !!
                0021 !!          59 Temple Place, Suite 330                               !!
                0022 !!          Boston, MA  02111-1307  USA                              !!
                0023 !! or see:                                                           !!
                0024 !!          http://www.gnu.org/licenses/gpl.txt                      !!
                0025 !!                                                                   !!
                0026 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                0027 
                0028 -->
                0029 <html>
                0030 <head>
                0031 <META http-equiv="Content-Type" content="text/html; charset=EUC-JP">
                0032 <title>Module constants_mod</title>
                0033 <link type="text/css" href="http://www.gfdl.noaa.gov/~fms/style/doc.css" rel="stylesheet">
                0034 <STYLE TYPE="text/css">
                0035           .fixed {
                0036             font-size:medium;
                0037             font-family:monospace;
                0038             border-style:none;
                0039             border-width:0.1em;
                0040             padding:0.1em;
                0041             color:#663366;
                0042           }
                0043         </STYLE>
                0044 </head>
                0045 <body>
                0046 <a name="TOP"></a><font class="header" size="1"><a href="#PUBLIC INTERFACE">PUBLIC INTERFACE </a>~
                0047           <a href="#PUBLIC DATA">PUBLIC DATA </a>~
                0048           <a href="#PUBLIC ROUTINES">PUBLIC ROUTINES </a>~
                0049           <a href="#NAMELIST">NAMELIST </a>~
                0050           <a href="#DIAGNOSTIC FIELDS">DIAGNOSTIC FIELDS </a>~
                0051           <a href="#ERROR MESSAGES">ERROR MESSAGES </a>~
                0052           <a href="#REFERENCES">REFERENCES </a>~ 
                0053           <a href="#NOTES">NOTES</a></font>
                0054 <hr>
                0055 <h2>Module constants_mod</h2>
                0056 <a name="HEADER"></a>
                0057 <!-- BEGIN HEADER -->
                0058 <div>
                0059 <b>Contact:&nbsp;</b><a href="mailto:Bruce.Wyman@noaa.gov">   Bruce Wyman </a>
                0060 <br>
                0061 <b>Reviewers:&nbsp;</b>
                0062 <br>
                0063 <b>Change History:&nbsp;</b><a href="http://www.gfdl.noaa.gov/fms-cgi-bin/cvsweb.cgi/FMS/shared/constants">WebCVS Log</a>
                0064 <br>
                0065 <br>
                0066 </div>
                0067 <!-- END HEADER -->
                0068 <a name="OVERVIEW"></a>
                0069 <hr>
                0070 <h4>OVERVIEW</h4>
                0071 <!-- BEGIN OVERVIEW -->
                0072 <p class="text">   Defines useful constants for Earth. </p>
                0073 <!-- END OVERVIEW -->
                0074 <a name="DESCRIPTION"></a>
                0075 <!-- BEGIN DESCRIPTION -->
                0076 <div>   Constants are defined as real parameters, 
                0077    except for PI and RADIAN, which are calculated in constants_init to promote
                0078    consistency and accuracy among various compilers.
                0079    <br>
                0080 <br>
                0081    Constants are accessed through the "use" statement. </div>
                0082 <br>
                0083 <!-- END DESCRIPTION -->
                0084 <a name="OTHER MODULES USED"></a>
                0085 <hr>
                0086 <h4>OTHER MODULES USED</h4>
                0087 <!-- BEGIN OTHER MODULES USED -->
                0088 <div>
                0089 <pre>fms_mod</pre>
                0090 </div>
                0091 <!-- END OTHER MODULES USED -->
                0092 <!-- BEGIN PUBLIC INTERFACE -->
                0093 <a name="PUBLIC INTERFACE"></a>
                0094 <hr>
                0095 <h4>PUBLIC INTERFACE</h4>
                0096 <div>
                0097 <dl>
                0098 <dt>
                0099 <a href="#constants_init">constants_init</a>:</dt>
                0100 <dd>   Initialization routine. The purpose of this routine 
                0101    is initialize the value of PI and RADIAN, and to write the 
                0102    version and tag name information to the log file. </dd>
                0103 </dl>
                0104 </div>
                0105 <br>
                0106 <!-- END PUBLIC INTERFACE -->
                0107 <a name="PUBLIC DATA"></a>
                0108 <hr>
                0109 <h4>PUBLIC DATA</h4>
                0110 <!-- BEGIN PUBLIC DATA -->
                0111 <div>
                0112 <table align="center" cellspacing="2" CELLPADDING="2" BORDER="2">
                0113 <tr>
                0114 <th> Name  </th><th> Type  </th><th> Value  </th><th> Units  </th><th> Description  </th>
                0115 </tr>
                0116 <tr>
                0117 <td> RADIUS  </td><td> real  </td><td> 6371.e3  </td><td> m  </td><td>    radius of the earth   </td>
                0118 </tr>
                0119 <tr>
                0120 <td> OMEGA  </td><td> real  </td><td> 7.292e-5  </td><td> 1/s  </td><td>    rotation rate of the planet (earth)   </td>
                0121 </tr>
                0122 <tr>
                0123 <td> GRAV  </td><td> real  </td><td> 9.80  </td><td> m/s^2  </td><td>    acceleration due to gravity   </td>
                0124 </tr>
                0125 <tr>
                0126 <td> RDGAS  </td><td> real  </td><td> 287.04  </td><td> J/kg/deg  </td><td>    gas constant for dry air   </td>
                0127 </tr>
                0128 <tr>
                0129 <td> KAPPA  </td><td> real  </td><td> 2./7.  </td><td> ---  </td><td>    RDGAS / CP_AIR   </td>
                0130 </tr>
                0131 <tr>
                0132 <td> CP_AIR  </td><td> real  </td><td> RDGAS/KAPPA  </td><td> J/kg/deg  </td><td>    specific heat capacity of dry air at constant pressure   </td>
                0133 </tr>
                0134 <tr>
                0135 <td> CP_OCEAN  </td><td> real  </td><td> 3989.24495292815  </td><td> J/kg/deg  </td><td>    specific heat capacity taken from McDougall (2002) "Potential Enthalpy ..."   </td>
                0136 </tr>
                0137 <tr>
                0138 <td> RHO0  </td><td> real  </td><td> 1.035e3  </td><td> kg/m^3  </td><td>    average density of sea water   </td>
                0139 </tr>
                0140 <tr>
                0141 <td> RHO0R  </td><td> real  </td><td> 1.0/RHO0  </td><td> m^3/kg  </td><td>    reciprocal of average density of sea water   </td>
                0142 </tr>
                0143 <tr>
                0144 <td> RHO_CP  </td><td> real  </td><td> RHO0*CP_OCEAN  </td><td> J/m^3/deg  </td><td>    (kg/m^3)*(cal/kg/deg C)(joules/cal) = (joules/m^3/deg C)   </td>
                0145 </tr>
                0146 <tr>
                0147 <td> RVGAS  </td><td> real  </td><td> 461.50  </td><td> J/kg/deg  </td><td>    gas constant for water vapor   </td>
                0148 </tr>
                0149 <tr>
                0150 <td> DENS_H2O  </td><td> real  </td><td> 1000.  </td><td> kg/m^3  </td><td>    density of liquid water   </td>
                0151 </tr>
                0152 <tr>
                0153 <td> HLV  </td><td> real  </td><td> 2.500e6  </td><td> J/kg  </td><td>    latent heat of evaporation   </td>
                0154 </tr>
                0155 <tr>
                0156 <td> HLF  </td><td> real  </td><td> 3.34e5  </td><td> J/kg  </td><td>    latent heat of fusion   </td>
                0157 </tr>
                0158 <tr>
                0159 <td> HLS  </td><td> real  </td><td> 2.834e6  </td><td> J/kg  </td><td>    latent heat of sublimation   </td>
                0160 </tr>
                0161 <tr>
                0162 <td> TFREEZE  </td><td> real  </td><td> 273.16  </td><td> degK  </td><td>    temp where fresh water freezes   </td>
                0163 </tr>
                0164 <tr>
                0165 <td> WTMAIR  </td><td> real  </td><td> 2.896440E+01  </td><td> AMU  </td><td>    molecular weight of air   </td>
                0166 </tr>
                0167 <tr>
                0168 <td> WTMH2O  </td><td> real  </td><td> 1.801534E+01  </td><td> AMU  </td><td>    molecular weight of water   </td>
                0169 </tr>
                0170 <tr>
                0171 <td> WTMO3  </td><td> real  </td><td> 47.99820E+01  </td><td> AMU  </td><td>    molecular weight of ozone   </td>
                0172 </tr>
                0173 <tr>
                0174 <td> DIFFAC  </td><td> real  </td><td> 1.660000E+00  </td><td> ---  </td><td>    diffusivity factor   </td>
                0175 </tr>
                0176 <tr>
                0177 <td> SECONDS_PER_DAY  </td><td> real  </td><td> 8.640000E+04  </td><td> seconds  </td><td>    seconds in a day   </td>
                0178 </tr>
                0179 <tr>
                0180 <td> AVOGNO  </td><td> real  </td><td> 6.023000E+23  </td><td> atoms/mole  </td><td>    Avogadro's number   </td>
                0181 </tr>
                0182 <tr>
                0183 <td> PSTD  </td><td> real  </td><td> 1.013250E+06  </td><td> dynes/cm^2  </td><td>    mean sea level pressure   </td>
                0184 </tr>
                0185 <tr>
                0186 <td> PSTD_MKS  </td><td> real  </td><td> 101325.0  </td><td> Newtons/m^2  </td><td>    mean sea level pressure   </td>
                0187 </tr>
                0188 <tr>
                0189 <td> REARTH  </td><td> real  </td><td> 6.356766E+08  </td><td> cm  </td><td>    radius of the earth   </td>
                0190 </tr>
                0191 <tr>
                0192 <td> RADCON  </td><td> real  </td><td> ((1.0E+02*GRAV)/(1.0E+04*CP_AIR))*SECONDS_PER_DAY  </td><td> deg sec/(cm day)  </td><td>    factor used to convert flux divergence to heating rate in degrees per day   </td>
                0193 </tr>
                0194 <tr>
                0195 <td> RADCON_MKS  </td><td> real  </td><td> (GRAV/CP_AIR)*SECONDS_PER_DAY  </td><td> deg sec/(m day)  </td><td>    factor used to convert flux divergence to heating rate in degrees per day   </td>
                0196 </tr>
                0197 <tr>
                0198 <td> O2MIXRAT  </td><td> real  </td><td> 2.0953E-01  </td><td> ---  </td><td>    mixing ratio of molecular oxygen in air   </td>
                0199 </tr>
                0200 <tr>
                0201 <td> RHOAIR  </td><td> real  </td><td> 1.292269  </td><td> kg/m^3  </td><td>    reference atmospheric density   </td>
                0202 </tr>
                0203 <tr>
                0204 <td> ALOGMIN  </td><td> real  </td><td> -50.0  </td><td> ---  </td><td>    minimum value allowed as argument to log function   </td>
                0205 </tr>
                0206 <tr>
                0207 <td> FREZDK  </td><td> real  </td><td> 273.16  </td><td> deg K  </td><td>    melting point of water   </td>
                0208 </tr>
                0209 <tr>
                0210 <td> STEFAN  </td><td> real  </td><td> 5.6734e-8  </td><td> W/m^2/deg^4  </td><td>    Stefan-Boltzmann constant   </td>
                0211 </tr>
                0212 <tr>
                0213 <td> VONKARM  </td><td> real  </td><td> 0.40  </td><td> ---  </td><td>    Von Karman constant   </td>
                0214 </tr>
                0215 <tr>
                0216 <td> PI  </td><td> real  </td><td> 4.0*ATAN(1.0)  </td><td> ---  </td><td>    ratio of circle circumference to diameter   </td>
                0217 </tr>
                0218 <tr>
                0219 <td> RADIAN  </td><td> real  </td><td> 180.0/PI  </td><td> ---  </td><td>    degrees per radian   </td>
                0220 </tr>
                0221 <tr>
                0222 <td> C2DBARS  </td><td> real  </td><td> 1.e-4  </td><td> dbars  </td><td>    converts rho*g*z (in mks) to dbars: 1dbar = 10^4 (kg/m^3)(m/s^2)m   </td>
                0223 </tr>
                0224 <tr>
                0225 <td> KELVIN  </td><td> real  </td><td> 273.15  </td><td> ---  </td><td>    degrees Kelvin at zero Celsius   </td>
                0226 </tr>
                0227 <tr>
                0228 <td> EPSLN  </td><td> real  </td><td> 1.0e-40  </td><td> ---  </td><td>    a small number to prevent divide by zero exceptions   </td>
                0229 </tr>
                0230 </table>
                0231 <br>
                0232 </div>
                0233 <!-- END PUBLIC DATA -->
                0234 <a name="PUBLIC ROUTINES"></a>
                0235 <hr>
                0236 <h4>PUBLIC ROUTINES</h4>
                0237 <!-- BEGIN PUBLIC ROUTINES -->
                0238 <ol type="a">
                0239 <li>
                0240 <a name="constants_init"></a>
                0241 <h4>constants_init</h4>
                0242 <pre>
                0243 <b>call constants_init </b>
                0244 </pre>
                0245 <dl>
                0246 <dt>
                0247 <b>DESCRIPTION</b>
                0248 </dt>
                0249 <dd>   If this routine is called more than once or called
                0250    from other than the root PE it will return silently.
                0251    There are no arguments. </dd>
                0252 <br>
                0253 <br>
                0254 </dl>
                0255 </li>
                0256 </ol>
                0257 <!-- END PUBLIC ROUTINES -->
                0258 <a name="PUBLIC TYPES"></a>
                0259 <!-- BEGIN PUBLIC TYPES -->
                0260 <!-- END PUBLIC TYPES --><a name="NAMELIST"></a>
                0261 <!-- BEGIN NAMELIST -->
                0262 <!-- END NAMELIST --><a name="DIAGNOSTIC FIELDS"></a>
                0263 <!-- BEGIN DIAGNOSTIC FIELDS -->
                0264 <!-- END DIAGNOSTIC FIELDS --><a name="DATA SETS"></a>
                0265 <!-- BEGIN DATA SETS -->
                0266 <hr>
                0267 <h4>DATA SETS</h4>
                0268 <div>None.<br>
                0269 <br>
                0270 </div>
                0271 <!-- END DATA SETS -->
                0272 <a name="PUBLIC CODE"></a>
                0273 <!-- BEGIN PUBLIC CODE -->
                0274 <!-- END PUBLIC CODE --><a name="ERROR MESSAGES"></a>
                0275 <!-- BEGIN ERROR MESSAGES -->
                0276 <hr>
                0277 <h4>ERROR MESSAGES</h4>
                0278 <div>None.<br>
                0279 <br>
                0280 </div>
                0281 <!-- END ERROR MESSAGES -->
                0282 <a name="REFERENCES"></a>
                0283 <hr>
                0284 <h4>REFERENCES</h4>
                0285 <!-- BEGIN REFERENCES -->
                0286 <div>
                0287         None.
                0288       </div>
                0289 <br>
                0290 <!-- END REFERENCES -->
                0291 <a name="COMPILER SPECIFICS"></a>
                0292 <hr>
                0293 <h4>COMPILER SPECIFICS</h4>
                0294 <!-- BEGIN COMPILER SPECIFICS -->
                0295 <div>
                0296         None.
                0297       </div>
                0298 <br>
                0299 <!-- END COMPILER SPECIFICS -->
                0300 <a name="PRECOMPILER OPTIONS"></a>
                0301 <hr>
                0302 <h4>PRECOMPILER OPTIONS</h4>
                0303 <!-- BEGIN PRECOMPILER OPTIONS -->
                0304 <div>
                0305         None.
                0306       </div>
                0307 <br>
                0308 <!-- END PRECOMPILER OPTIONS -->
                0309 <a name="LOADER OPTIONS"></a>
                0310 <hr>
                0311 <h4>LOADER OPTIONS</h4>
                0312 <!-- BEGIN LOADER -->
                0313 <div>None.<br>
                0314 <br>
                0315 </div>
                0316 <!-- END LOADER OPTIONS -->
                0317 <a name="TEST PROGRAM"></a>
                0318 <hr>
                0319 <h4>TEST PROGRAM</h4>
                0320 <!-- BEGIN TEST PROGRAM -->
                0321 <div>None.<br>
                0322 </div>
                0323 <br>
                0324 <!-- END TEST PROGRAM -->
                0325 <a name="KNOWN BUGS"></a>
                0326 <hr>
                0327 <h4>KNOWN BUGS</h4>
                0328 <!-- BEGIN KNOWN BUGS -->
                0329 <div>
                0330         None.
                0331       </div>
                0332 <br>
                0333 <!-- END KNOWN BUGS -->
                0334 <a name="NOTES"></a>
                0335 <hr>
                0336 <h4>NOTES</h4>
                0337 <!-- BEGIN NOTES -->
                0338 <div>   Constants have been declared as type REAL, PARAMETER.
                0339    <br>
                0340 <br>
                0341    The value a constant can not be changed in a users program.
                0342    New constants can be defined in terms of values from the
                0343    constants module using a parameter statement.&lt;br&gt;&lt;br&gt;
                0344    <br>
                0345 <br>
                0346    The name given to a particular constant may be changed.&lt;br&gt;&lt;br&gt;
                0347    <br>
                0348 <br>
                0349    Constants can be used on the right side on an assignment statement
                0350    (their value can not be reassigned). 
                0351    <br>
                0352 <br>
                0353    As PI is calculated, it cannot be a parameter variable.
                0354    Do not assign a new value to PI.  
                0355    <br>
                0356 <br> 
                0357 <dl>
                0358 <dt>EXAMPLE</dt>
                0359 <dd> 
                0360 <pre>    use constants_mod, only:  TFREEZE, grav_new =&gt; GRAV
                0361     real, parameter :: grav_inv = 1.0 / grav_new
                0362     tempc(:,:,:) = tempk(:,:,:) - TFREEZE
                0363     geopotential(:,:) = height(:,:) * grav_new</pre> 
                0364 </dd>
                0365 </dl> 
                0366 </div>
                0367 <br>
                0368 <!-- END NOTES -->
                0369 <a name="FUTURE PLANS"></a>
                0370 <hr>
                0371 <h4>FUTURE PLANS</h4>
                0372 <!-- BEGIN FUTURE PLANS -->
                0373 <div>
                0374 <p>   1.  Renaming of constants. </p>
                0375 <p>   2.  Additional constants. </p>
                0376 </div>
                0377 <br>
                0378 <!-- END FUTURE PLANS -->
                0379 <hr>
                0380 <div align="right">
                0381 <font size="-1"><a href="#TOP">top</a></font>
                0382 </div>
                0383 </body>
                0384 </html>