- Timestamp:
- 2015-02-26T18:18:47+01:00 (10 years ago)
- Location:
- trunk
- Files:
-
- 5 deleted
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/DOC/TexFiles/Chapters/Chap_DIA.tex
r5003 r5107 74 74 The second functionality targets output performance when running in parallel (\key{mpp\_mpi}). Iomput provides the possibility to specify N dedicated I/O processes (in addition to the NEMO processes) to collect and write the outputs. With an appropriate choice of N by the user, the bottleneck associated with the writing of the output files can be greatly reduced. 75 75 76 Since version 3.5, the iom\_put interface depends on an external code called \href{http://forge.ipsl.jussieu.fr/ioserver}{XIOS}. This new IO server can take advantage of the parallel I/O functionality of NetCDF4 to create a single output file and therefore to bypass the rebuilding phase. Note that writing in parallel into the same NetCDF files requires that your NetCDF4 library is linked to an HDF5 library that has been correctly compiled (i.e. with the configure option $--$enable-parallel). Note that the files created by iomput through XIOS are incompatible with NetCDF3. All post-processsing and visualization tools must therefore be compatible with NetCDF4 and not only NetCDF3.76 In version 3.6, the iom\_put interface depends on an external code called \href{https://forge.ipsl.jussieu.fr/ioserver/browser/XIOS/branchs/xios-1.0}{XIOS-1.0}. This new IO server can take advantage of the parallel I/O functionality of NetCDF4 to create a single output file and therefore to bypass the rebuilding phase. Note that writing in parallel into the same NetCDF files requires that your NetCDF4 library is linked to an HDF5 library that has been correctly compiled (i.e. with the configure option $--$enable-parallel). Note that the files created by iomput through XIOS are incompatible with NetCDF3. All post-processsing and visualization tools must therefore be compatible with NetCDF4 and not only NetCDF3. 77 77 78 78 Even if not using the parallel I/O functionality of NetCDF4, using N dedicated I/O servers, where N is typically much less than the number of NEMO processors, will reduce the number of output files created. This can greatly reduce the post-processing burden usually associated with using large numbers of NEMO processors. Note that for smaller configurations, the rebuilding phase can be avoided, even without a parallel-enabled NetCDF4 library, simply by employing only one dedicated I/O server. … … 543 543 \end{tabular} 544 544 545 \subsubsection{Advanced use of XIOS functionalities} 545 546 546 547 \subsection{XML reference tables} 548 549 (1) Simple computation: directly define the computation when refering to the variable in the file definition. 550 551 \vspace{-20pt} 552 \begin{alltt} {{\scriptsize 553 \begin{verbatim} 554 <field field\_ref="sst" name="tosK" unit="degK" > sst + 273.15 </field> 555 <field field\_ref="taum" name="taum2" unit="N2/m4" long\_name="square of wind stress module" > taum * taum </field> 556 <field field\_ref="qt" name="stupid\_check" > qt - qsr - qns </field> 557 \end{verbatim} 558 }}\end{alltt} 559 560 (2) Simple computation: define a new variable and use it in the file definition. 561 562 in field\_definition: 563 \vspace{-20pt} 564 \begin{alltt} {{\scriptsize 565 \begin{verbatim} 566 <field id="sst2" long\_name="square of sea surface temperature" unit="degC2" > sst * sst </field > 567 \end{verbatim} 568 }}\end{alltt} 569 in file\_definition: 570 \vspace{-20pt} 571 \begin{alltt} {{\scriptsize 572 \begin{verbatim} 573 <field field\_ref="sst2" > sst2 </field> 574 \end{verbatim} 575 }}\end{alltt} 576 Note that in this case, the following syntaxe $<$field field\_ref="sst2" /$>$ is not working as sst2 won't be evaluated. 577 578 (3) Change of variable precision: 579 580 \vspace{-20pt} 581 \begin{alltt} {{\scriptsize 582 \begin{verbatim} 583 <!-- force to keep real 8 --> 584 <field field\_ref="sst" name="tos\_r8" prec="8" /> 585 <!-- integer 2 with add\_offset and scale\_factor attributes --> 586 <field field\_ref="sss" name="sos\_i2" prec="2" add\_offset="20." scale\_factor="1.e-3" /> 587 \end{verbatim} 588 }}\end{alltt} 589 Note that, then the code is crashing, writting real4 variables forces a numerical convection from real8 to real4 which will create an internal error in NetCDF and will avoid the creation of the output files. Forcing double precision outputs with prec="8" (for example in the field\_definition) will avoid this problem. 590 591 (4) add user defined attributes: 592 593 \vspace{-20pt} 594 \begin{alltt} {{\scriptsize 595 \begin{verbatim} 596 <file\_group id="1d" output\_freq="1d" output\_level="10" enabled=".TRUE."> <!-- 1d files --> 597 <file id="file1" name\_suffix="\_grid\_T" description="ocean T grid variables" > 598 <field field\_ref="sst" name="tos" > 599 <variable id="my\_attribute1" type="string" > blabla </variable> 600 <variable id="my\_attribute2" type="integer" > 3 </variable> 601 <variable id="my\_attribute3" type="float" > 5.0 </variable> 602 </field> 603 <variable id="my\_global\_attribute" type="string" > blabla\_global </variable> 604 </file> 605 </file\_group> 606 \end{verbatim} 607 }}\end{alltt} 608 609 (5) use of the ``@'' function: example 1, weighted temporal average 610 611 - define a new variable in field\_definition 612 \vspace{-20pt} 613 \begin{alltt} {{\scriptsize 614 \begin{verbatim} 615 <field id="toce\_e3t" long\_name="temperature * e3t" unit="degC*m" grid\_ref="grid\_T\_3D" > toce * e3t </field > 616 \end{verbatim} 617 }}\end{alltt} 618 - use it when defining your file. 619 \vspace{-20pt} 620 \begin{alltt} {{\scriptsize 621 \begin{verbatim} 622 <file\_group id="5d" output\_freq="5d" output\_level="10" enabled=".TRUE." > <!-- 5d files --> 623 <file id="file1" name\_suffix="\_grid\_T" description="ocean T grid variables" > 624 <field field\_ref="toce" operation="instant" freq\_op="5d" > @toce\_e3t / @e3t </field> 625 </file> 626 </file\_group> 627 \end{verbatim} 628 }}\end{alltt} 629 The freq\_op="5d" attribute is used to define the operation frequency of the ``@'' function: here 5 day. The temporal operation done by the ``@'' is the one defined in the field definition: here we use the default, average. So, in the above case, @toce\_e3t will do the 5-day mean of toce*e3t. Operation="instant" refers to the temporal operation to be performed on the field''@toce\_e3t / @e3t'': here the temporal average is alreday done by the ``@'' function so we just use instant to do the ratio of the 2 mean values. field\_ref="toce" means that attributes not explicitely defined, are inherited from toce field. Note that in this case, freq\_op must be equal to the file output\_freq. 630 631 (6) use of the ``@'' function: example 2, monthly SSH standard deviation 632 633 - define a new variable in field\_definition 634 \vspace{-20pt} 635 \begin{alltt} {{\scriptsize 636 \begin{verbatim} 637 <field id="ssh2" long\_name="square of sea surface temperature" unit="degC2" > ssh * ssh </field > 638 \end{verbatim} 639 }}\end{alltt} 640 - use it when defining your file. 641 \vspace{-20pt} 642 \begin{alltt} {{\scriptsize 643 \begin{verbatim} 644 <file\_group id="1m" output\_freq="1m" output\_level="10" enabled=".TRUE." > <!-- 1m files --> 645 <file id="file1" name\_suffix="\_grid\_T" description="ocean T grid variables" > 646 <field field\_ref="ssh" name="sshstd" long\_name="sea\_surface\_temperature\_standard\_deviation" operation="instant" freq\_op="1m" > sqrt( @ssh2 - @ssh * @ssh ) </field> 647 </file> 648 </file\_group> 649 \end{verbatim} 650 }}\end{alltt} 651 The freq\_op="1m" attribute is used to define the operation frequency of the ``@'' function: here 1 month. The temporal operation done by the ``@'' is the one defined in the field definition: here we use the default, average. So, in the above case, @ssh2 will do the monthly mean of ssh*ssh. Operation="instant" refers to the temporal operation to be performed on the field ''sqrt( @ssh2 - @ssh * @ssh )'': here the temporal average is alreday done by the ``@'' function so we just use instant. field\_ref="ssh" means that attributes not explicitely defined, are inherited from ssh field. Note that in this case, freq\_op must be equal to the file output\_freq. 652 653 (7) use of the ``@'' function: example 3, monthly average of SST diurnal cycle 654 655 - define 2 new variables in field\_definition 656 \vspace{-20pt} 657 \begin{alltt} {{\scriptsize 658 \begin{verbatim} 659 <field id="sstmax" field\_ref="sst" long\_name="max of sea surface temperature" operation="maximum" /> 660 <field id="sstmin" field\_ref="sst" long\_name="min of sea surface temperature" operation="minimum" /> 661 \end{verbatim} 662 }}\end{alltt} 663 - use these 2 new variables when defining your file. 664 \vspace{-20pt} 665 \begin{alltt} {{\scriptsize 666 \begin{verbatim} 667 <file\_group id="1m" output\_freq="1m" output\_level="10" enabled=".TRUE." > <!-- 1m files --> 668 <file id="file1" name\_suffix="\_grid\_T" description="ocean T grid variables" > 669 <field field\_ref="sst" name="sstdcy" long\_name="amplitude of sst diurnal cycle" operation="average" freq\_op="1d" > @sstmax - @sstmin </field> 670 </file> 671 </file\_group> 672 \end{verbatim} 673 }}\end{alltt} 674 The freq\_op="1d" attribute is used to define the operation frequency of the ``@'' function: here 1 day. The temporal operation done by the ``@'' is the one defined in the field definition: here maximum for sstmax and minimum for sstmin. So, in the above case, @sstmax will do the daily max and @sstmin the daily min. Operation="average" refers to the temporal operation to be performed on the field ``@sstmax - @sstmin'': here monthly mean (of daily max - daily min of the sst). field\_ref="sst" means that attributes not explicitely defined, are inherited from sst field. 675 676 547 677 548 678 \subsubsection{Tag list} -
trunk/NEMOGCM/CONFIG/AMM12/EXP00/iodef.xml
r4695 r5107 40 40 41 41 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 42 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />42 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 43 43 </file> 44 44 45 45 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 46 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />46 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 47 47 </file> 48 48 … … 70 70 <file id="file5" name_suffix="_grid_U" description="ocean U grid variables" > 71 71 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 72 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />72 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 73 73 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 74 74 </file> … … 76 76 <file id="file6" name_suffix="_grid_V" description="ocean V grid variables" > 77 77 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 78 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />78 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 79 79 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 80 80 </file> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef.xml
r4696 r5107 35 35 36 36 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 37 <field field_ref="e3t" /> 38 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" operation="instant" freq_op="5d" > @toce_e3t / @e3t </field> 39 <field field_ref="soce" name="so" long_name="sea_water_salinity" operation="instant" freq_op="5d" > @soce_e3t / @e3t </field> 37 40 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" /> 38 41 <field field_ref="sss" name="sos" long_name="sea_surface_salinity" /> 39 42 <field field_ref="ssh" name="zos" long_name="sea_surface_height_above_geoid" /> 40 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 41 <field field_ref="soce" name="so" long_name="sea_water_salinity" /> 42 <field field_ref="sst2" name="tossq" long_name="square_of_sea_surface_temperature" /> 43 <field field_ref="ssh2" name="zossq" long_name="square_of_sea_surface_height_above_geoid" /> 43 <field field_ref="sst" name="tosstd" long_name="sea_surface_temperature_standard_deviation" operation="instant" freq_op="5d" > sqrt( @sst2 - @sst * @sst ) </field> 44 <field field_ref="ssh" name="zosstd" long_name="sea_surface_height_above_geoid_standard_deviation" operation="instant" freq_op="5d" > sqrt( @ssh2 - @ssh * @ssh ) </field> 45 <field field_ref="sst" name="sstdcy" long_name="amplitude of sst diurnal cycle" operation="average" freq_op="1d" > @sstmax - @sstmin </field> 44 46 <field field_ref="mldkz5" /> 45 47 <field field_ref="mldr10_1" /> 48 <field field_ref="mldr10_1" name="mldr10_1dcy" long_name="amplitude of mldr10_1 diurnal cycle" operation="average" freq_op="1d" > @mldr10_1max - @mldr10_1min </field> 46 49 <field field_ref="empmr" name="wfo" long_name="water_flux_into_sea_water" /> 47 50 <field field_ref="qsr" name="rsntds" long_name="surface_net_downward_shortwave_flux" /> 48 51 <field field_ref="qt" name="tohfls" long_name="surface_net_downward_total_heat_flux" /> 49 <field field_ref="saltflx" name="sosflxdo" 50 <field field_ref="taum" name="taum" />51 <field field_ref="wspd" name="sowindsp" 52 <field field_ref="saltflx" name="sosflxdo" /> 53 <field field_ref="taum" name="taum" /> 54 <field field_ref="wspd" name="sowindsp" /> 52 55 <field field_ref="precip" name="soprecip" /> 56 <field field_ref="sbt" /> 53 57 </file> 54 58 55 59 <file id="file3" name_suffix="_grid_U" description="ocean U grid variables" > 56 <field field_ref="suoce" name="uos" long_name="sea_surface_x_velocity" /> 57 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 60 <field field_ref="e3u" /> 61 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 62 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" operation="instant" freq_op="5d" > @uoce_e3u / @e3u </field> 58 63 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 59 64 <!-- variables available with MLE … … 63 68 64 69 <file id="file4" name_suffix="_grid_V" description="ocean V grid variables" > 65 <field field_ref="svoce" name="vos" long_name="sea_surface_y_velocity" /> 66 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 70 <field field_ref="e3v" /> 71 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 72 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" operation="instant" freq_op="5d" > @voce_e3v / @e3v </field> 67 73 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 68 74 <!-- variables available with MLE … … 72 78 73 79 <file id="file5" name_suffix="_grid_W" description="ocean W grid variables" > 74 <field field_ref="woce" name="wo" long_name="ocean vertical velocity" /> 80 <field field_ref="e3w" /> 81 <field field_ref="woce" name="wo" long_name="ocean vertical velocity" operation="instant" freq_op="5d" > @woce_e3w / @e3w </field> 75 82 <field field_ref="avt" name="difvho" long_name="ocean_vertical_heat_diffusivity" /> 76 83 </file> … … 156 163 We must have buffer_size > jpi*jpj*jpk*8 (with jpi and jpj the subdomain size) 157 164 --> 158 <variable id="buffer_size" type="integer">5000000 </variable>165 <variable id="buffer_size" type="integer">50000000</variable> 159 166 <variable id="buffer_server_factor_size" type="integer">2</variable> 160 167 <variable id="info_level" type="integer">0</variable> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_ar5.xml
r4153 r5107 49 49 <field field_ref="ssh" name="zos" long_name="sea_surface_height_above_geoid" /> 50 50 <field field_ref="ssh2" name="zossq" long_name="square_of_sea_surface_height_above_geoid" level="2" /> 51 <!-- masscello : sea_water_mass_per_unit_area = cellthc*rau0 no time changes -->52 <field field_ref=" cellthc"name="thkcello" long_name="cell_thickness" /> <!-- no time changes -->51 <!-- masscello : sea_water_mass_per_unit_area = e3t*rau0 no time changes --> 52 <field field_ref="e3t" name="thkcello" long_name="cell_thickness" /> <!-- no time changes --> 53 53 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 54 54 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" level="1" /> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_crs.xml
r4152 r5107 40 40 41 41 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 42 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />42 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 43 43 </file> 44 44 45 45 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 46 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />46 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 47 47 </file> 48 48 … … 71 71 <file id="file5" name_suffix="_grid_U" description="ocean U grid variables" > 72 72 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 73 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />73 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 74 74 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 75 75 </file> … … 77 77 <file id="file6" name_suffix="_grid_V" description="ocean V grid variables" > 78 78 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 79 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />79 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 80 80 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 81 81 </file> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM3/EXP00/iodef.xml
r4990 r5107 38 38 39 39 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 40 <field field_ref="e3t" /> 41 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" operation="instant" freq_op="5d" > @toce_e3t / @e3t </field> 42 <field field_ref="soce" name="so" long_name="sea_water_salinity" operation="instant" freq_op="5d" > @soce_e3t / @e3t </field> 40 43 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" /> 41 44 <field field_ref="sss" name="sos" long_name="sea_surface_salinity" /> 42 45 <field field_ref="ssh" name="zos" long_name="sea_surface_height_above_geoid" /> 43 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 44 <field field_ref="soce" name="so" long_name="sea_water_salinity" /> 45 <field field_ref="sst2" name="tossq" long_name="square_of_sea_surface_temperature" /> 46 <field field_ref="ssh2" name="zossq" long_name="square_of_sea_surface_height_above_geoid" /> 46 <field field_ref="sst" name="tosstd" long_name="sea_surface_temperature_standard_deviation" operation="instant" freq_op="5d" > sqrt( @sst2 - @sst * @sst ) </field> 47 <field field_ref="ssh" name="zosstd" long_name="sea_surface_height_above_geoid_standard_deviation" operation="instant" freq_op="5d" > sqrt( @ssh2 - @ssh * @ssh ) </field> 48 <field field_ref="sst" name="sstdcy" long_name="amplitude of sst diurnal cycle" operation="average" freq_op="1d" > @sstmax - @sstmin </field> 47 49 <field field_ref="mldkz5" /> 48 50 <field field_ref="mldr10_1" /> 49 <field field_ref="heatc" name="heatc" long_name="Heat content vertically integrated" /> 50 <field field_ref="saltc" name="saltc" long_name="Salt content vertically integrated" /> 51 <field field_ref="mldr10_1" name="mldr10_1dcy" long_name="amplitude of mldr10_1 diurnal cycle" operation="average" freq_op="1d" > @mldr10_1max - @mldr10_1min </field> 52 <field field_ref="sbt" /> 53 <field field_ref="heatc" name="heatc" long_name="Heat content vertically integrated" /> 54 <field field_ref="saltc" name="saltc" long_name="Salt content vertically integrated" /> 51 55 </file> 52 56 … … 72 76 73 77 <file id="file3" name_suffix="_grid_U" description="ocean U grid variables" > 78 <field field_ref="e3u" /> 74 79 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 75 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" />80 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" operation="instant" freq_op="5d" > @uoce_e3u / @e3u </field> 76 81 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 77 82 <!-- available with key_diaar5 --> … … 82 87 83 88 <file id="file4" name_suffix="_grid_V" description="ocean V grid variables" > 89 <field field_ref="e3v" /> 84 90 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 85 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" />91 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" operation="instant" freq_op="5d" > @voce_e3v / @e3v </field> 86 92 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 87 93 <!-- available with key_diaar5 --> … … 92 98 93 99 <file id="file5" name_suffix="_grid_W" description="ocean W grid variables" > 94 <field field_ref="woce" name="wo" long_name="ocean vertical velocity" /> 100 <field field_ref="e3w" /> 101 <field field_ref="woce" name="wo" long_name="ocean vertical velocity" operation="instant" freq_op="5d" > @woce_e3w / @e3w </field> 95 102 <field field_ref="avt" name="difvho" long_name="ocean_vertical_heat_diffusivity" /> 96 103 <field field_ref="w_masstr" name="vovematr" /> … … 323 330 We must have buffer_size > jpi*jpj*jpk*8 (with jpi and jpj the subdomain size) 324 331 --> 325 <variable id="buffer_size" type="integer">5000000 </variable>332 <variable id="buffer_size" type="integer">50000000</variable> 326 333 <variable id="buffer_server_factor_size" type="integer">2</variable> 327 334 <variable id="info_level" type="integer">0</variable> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM_CFC_C14b/EXP00/iodef.xml
r4153 r5107 53 53 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 54 54 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 55 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />55 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 56 56 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 57 57 </file> … … 59 59 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 60 60 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 61 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />61 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 62 62 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 63 63 </file> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM_PISCES/EXP00/iodef.xml
r4996 r5107 40 40 41 41 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 42 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />42 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 43 43 </file> 44 44 45 45 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 46 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />46 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 47 47 </file> 48 48 … … 86 86 <file id="file6" name_suffix="_grid_U" description="ocean U grid variables" > 87 87 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 88 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />88 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 89 89 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 90 90 <!-- variables available with MLE … … 95 95 <file id="file7" name_suffix="_grid_V" description="ocean V grid variables" > 96 96 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 97 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />97 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 98 98 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 99 99 <!-- variables available with MLE -
trunk/NEMOGCM/CONFIG/ORCA2_SAS_LIM/EXP00/iodef.xml
r4696 r5107 43 43 44 44 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 45 <field field_ref="s uoce"name="suoce" long_name="sea_surface_x_velocity" />45 <field field_ref="ssu" name="suoce" long_name="sea_surface_x_velocity" /> 46 46 </file> 47 47 48 48 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 49 <field field_ref="s voce"name="svoce" long_name="sea_surface_y_velocity" />49 <field field_ref="ssv" name="svoce" long_name="sea_surface_y_velocity" /> 50 50 </file> 51 51 … … 69 69 70 70 <file id="file5" name_suffix="_grid_U" description="ocean U grid variables" > 71 <field field_ref="s uoce"name="uos" long_name="sea_surface_x_velocity" />71 <field field_ref="ssu" name="uos" long_name="sea_surface_x_velocity" /> 72 72 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" /> 73 73 </file> 74 74 75 75 <file id="file6" name_suffix="_grid_V" description="ocean V grid variables" > 76 <field field_ref="s voce"name="vos" long_name="sea_surface_y_velocity" />76 <field field_ref="ssv" name="vos" long_name="sea_surface_y_velocity" /> 77 77 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" /> 78 78 </file> -
trunk/NEMOGCM/CONFIG/SHARED/field_def.xml
r4996 r5107 16 16 17 17 <field_group id="grid_T" grid_ref="grid_T_2D" > 18 <field id="toce" long_name="temperature" unit="degC" grid_ref="grid_T_3D"/> 19 <field id="soce" long_name="salinity" unit="psu" grid_ref="grid_T_3D"/> 18 <field id="e3t" long_name="T-cell thickness" unit="m" grid_ref="grid_T_3D"/> 19 20 <field id="toce" long_name="temperature" unit="degC" grid_ref="grid_T_3D"/> 21 <field id="toce_e3t" long_name="temperature * e3t" unit="degC*m" grid_ref="grid_T_3D" > toce * e3t </field > 22 <field id="soce" long_name="salinity" unit="psu" grid_ref="grid_T_3D"/> 23 <field id="soce_e3t" long_name="salinity * e3t" unit="psu*m" grid_ref="grid_T_3D" > soce * e3t </field > 24 20 25 <field id="sst" long_name="sea surface temperature" unit="degC" /> 21 <field id="sst2" long_name="square of sea surface temperature" unit="degC2" /> 26 <field id="sst2" long_name="square of sea surface temperature" unit="degC2" > sst * sst </field > 27 <field id="sstmax" long_name="max of sea surface temperature" field_ref="sst" operation="maximum" /> 28 <field id="sstmin" long_name="min of sea surface temperature" field_ref="sst" operation="minimum" /> 22 29 <field id="sstgrad" long_name="module of sst gradient" unit="degC/m" /> 23 30 <field id="sstgrad2" long_name="square of module of sst gradient" unit="degC2/m2" /> 31 <field id="sbt" long_name="sea bottom temperature" unit="degC" /> 32 24 33 <field id="sss" long_name="sea surface salinity" unit="psu" /> 25 <field id="sss2" long_name="square of sea surface salinity" unit="psu2" /> 34 <field id="sss2" long_name="square of sea surface salinity" unit="psu2" > sss * sss </field > 35 <field id="sssmax" long_name="max of sea surface salinity" field_ref="sss" operation="maximum" /> 36 <field id="sssmin" long_name="min of sea surface salinity" field_ref="sss" operation="minimum" /> 37 <field id="sbs" long_name="sea bottom salinity" unit="psu" /> 38 26 39 <field id="ssh" long_name="sea surface height" unit="m" /> 27 <field id="ssh2" long_name="square of sea surface height" unit="m2" /> 40 <field id="ssh2" long_name="square of sea surface height" unit="m2" > ssh * ssh </field > 41 <field id="sshmax" long_name="max of sea surface height" field_ref="ssh" operation="maximum" /> 42 28 43 <field id="mldkz5" long_name="mixing layer depth (Turbocline)" unit="m" /> 29 44 <field id="mldr10_1" long_name="Mixed Layer Depth 0.01 ref.10m" unit="m" /> 30 <field id="heatc" long_name="Heat content vertically integrated" unit="J/m2" /> 45 <field id="mldr10_1max" long_name="max of Mixed Layer Depth 0.01 ref.10m" field_ref="mldr10_1" operation="maximum" /> 46 <field id="mldr10_1min" long_name="min of Mixed Layer Depth 0.01 ref.10m" field_ref="mldr10_1" operation="minimum" /> 47 <field id="heatc" long_name="Heat content vertically integrated" unit="J/m2" /> 31 48 <field id="saltc" long_name="Salt content vertically integrated" unit="PSU*kg/m2" /> 32 49 <!-- EOS --> … … 57 74 <field id="botpres" long_name="Pressure at sea floor" unit="dbar" /> 58 75 <!-- variables available with key_diaar5/key_vvl --> 59 <field id="cellthc" long_name="Cell thickness" unit="m" grid_ref="grid_T_3D"/>60 76 <!-- variables available with key_vvl --> 61 77 <field id="tpt_dep" long_name="T-point depth" unit="m" grid_ref="grid_T_3D"/> … … 145 161 146 162 <field id="empmr" long_name="Net Upward Water Flux" unit="kg/m2/s" /> 147 <field id="saltflx" long_name="Downward salt flux" unit="PSU/m2/s" 163 <field id="saltflx" long_name="Downward salt flux" unit="PSU/m2/s" /> 148 164 <field id="fmmflx" long_name="Water flux due to freezing/melting" unit="kg/m2/s" /> 149 165 <field id="snowpre" long_name="Snow precipitation" unit="kg/m2/s" /> 150 166 <field id="runoffs" long_name="River Runoffs" unit="Kg/m2/s" /> 151 <field id="precip" long_name="Total precipitation" 167 <field id="precip" long_name="Total precipitation" unit="kg/m2/s" /> 152 168 153 169 … … 169 185 <field id="isfgammat" long_name="transfert coefficient for isf (temperature) " unit="m/s" /> 170 186 <field id="isfgammas" long_name="transfert coefficient for isf (salinity) " unit="m/s" /> 171 172 187 <field id="stbl" long_name="salinity in the Losh tbl " unit="PSU" /> 188 <field id="ttbl" long_name="temperature in the Losh tbl " unit="C" /> 173 189 174 190 <!-- *_oce variables available with ln_blk_clio or ln_blk_core --> … … 202 218 <field id="snowmel_cea" long_name="Snow Melt Rate (cell average)" unit="kg/m2/s" /> 203 219 <field id="sntoice_cea" long_name="Snow-Ice Formation Rate (cell average)" unit="kg/m2/s" /> 204 <field id="ticemel_cea" 220 <field id="ticemel_cea" long_name="Rate of Melt at Upper Surface of Sea Ice (cell average)" unit="kg/m2/s" /> 205 221 206 222 <!-- ice fields --> … … 259 275 260 276 <field id="micet" long_name="Mean ice temperature" unit="degC" /> 261 <field id="icehc" long_name="ice total heat content" unit="10^9J" />277 <field id="icehc" long_name="ice total heat content" unit="10^9J" /> 262 278 <field id="isnowhc" long_name="snow total heat content" unit="10^9J" /> 263 279 <field id="icest" long_name="ice surface temperature" unit="degC" /> … … 268 284 <field id="idive" long_name="divergence" unit="10-8s-1" /> 269 285 <field id="ishear" long_name="shear" unit="10-8s-1" /> 270 <field id="icevolu" long_name="ice volume" unit="m" />271 <field id="snowvol" long_name="snow volume" unit="m" />286 <field id="icevolu" long_name="ice volume" unit="m" /> 287 <field id="snowvol" long_name="snow volume" unit="m" /> 272 288 273 289 <field id="icetrp" long_name="ice volume transport" unit="m/day" /> 274 290 <field id="snwtrp" long_name="snw volume transport" unit="m/day" /> 275 <field id="deitrp" long_name="advected ice enhalpy" unit="W/m2" />276 <field id="destrp" long_name="advected snw enhalpy" unit="W/m2" />291 <field id="deitrp" long_name="advected ice enhalpy" unit="W/m2" /> 292 <field id="destrp" long_name="advected snw enhalpy" unit="W/m2" /> 277 293 278 294 <field id="sfxbri" long_name="brine salt flux" unit="psu*kg/m2/day" /> … … 314 330 <field id="hfxres" long_name="heat fluxes from ice-ocean mass exchange during resultant" unit="W/m2" /> 315 331 <field id="hfxsub" long_name="heat fluxes from ice-atm. mass exchange during sublimation" unit="W/m2" /> 316 <field id="hfxspr" long_name="heat fluxes from ice-atm. mass exchange during snow precip" unit="W/m2" />332 <field id="hfxspr" long_name="heat fluxes from ice-atm. mass exchange during snow precip" unit="W/m2" /> 317 333 318 334 <!-- diags --> 319 335 <field id="hfxdhc" long_name="Heat content variation in snow and ice" unit="W/m2" /> 320 <field id="hfxtur" long_name="turbulent heat flux at the ice base" unit="W/m2" 336 <field id="hfxtur" long_name="turbulent heat flux at the ice base" unit="W/m2" /> 321 337 322 338 </field_group> … … 325 341 326 342 <field_group id="grid_U" grid_ref="grid_U_2D"> 327 <field id="utau" long_name="Wind Stress along i-axis" unit="N/m2" /> 328 <field id="uoce" long_name="ocean current along i-axis" unit="m/s" grid_ref="grid_U_3D" /> 329 <field id="ssu" long_name="ocean surface current along i-axis" unit="m/s" /> 330 <field id="uocetr_eff" long_name="Effective ocean transport along i-axis" unit="m3/s" grid_ref="grid_U_3D" /> 343 <field id="e3u" long_name="U-cell thickness" unit="m" grid_ref="grid_U_3D" /> 344 <field id="utau" long_name="Wind Stress along i-axis" unit="N/m2" /> 345 <field id="uoce" long_name="ocean current along i-axis" unit="m/s" grid_ref="grid_U_3D" /> 346 <field id="uoce_e3u" long_name="ocean current along i-axis * e3u" unit="m2/s" grid_ref="grid_U_3D" > uoce * e3u </field> 347 <field id="ssu" long_name="ocean surface current along i-axis" unit="m/s" /> 348 <field id="sbu" long_name="ocean bottom current along i-axis" unit="m/s" /> 349 <field id="uocetr_eff" long_name="Effective ocean transport along i-axis" unit="m3/s" grid_ref="grid_U_3D" /> 331 350 <field id="uocet" long_name="ocean transport along i-axis times temperature" unit="degC.m/s" grid_ref="grid_U_3D" /> 332 351 <field id="uoces" long_name="ocean transport along i-axis times salinity" unit="psu.m/s" grid_ref="grid_U_3D" /> 333 352 <!-- variables available with MLE --> 334 <field id="psiu_mle" long_name="MLE streamfunction along i-axis" unit="m3/s" grid_ref="grid_U_3D"/>353 <field id="psiu_mle" long_name="MLE streamfunction along i-axis" unit="m3/s" grid_ref="grid_U_3D" /> 335 354 <!-- uoce_eiv: available with key_traldf_eiv and key_diaeiv --> 336 <field id="uoce_eiv" long_name="EIV ocean current along i-axis" unit="m/s"grid_ref="grid_U_3D" />355 <field id="uoce_eiv" long_name="EIV ocean current along i-axis" unit="m/s" grid_ref="grid_U_3D" /> 337 356 <!-- uoce_eiv: available with key_trabbl --> 338 <field id="uoce_bbl" long_name="BBL ocean current along i-axis" unit="m/s"grid_ref="grid_U_3D" />339 <field id="ahu_bbl" long_name="BBL diffusive flux along i-axis" unit="m3/s"/>357 <field id="uoce_bbl" long_name="BBL ocean current along i-axis" unit="m/s" grid_ref="grid_U_3D" /> 358 <field id="ahu_bbl" long_name="BBL diffusive flux along i-axis" unit="m3/s" /> 340 359 <!-- variable for ice shelves --> 341 <field id="utbl" long_name="zonal current in the Losh tbl" unit="m/s" axis_ref="none"/>360 <field id="utbl" long_name="zonal current in the Losh tbl" unit="m/s" /> 342 361 <!-- variables available with key_diaar5 --> 343 <field id="u_masstr" long_name="ocean eulerian mass transport along i-axis" unit="kg/s"grid_ref="grid_U_3D" />344 <field id="u_heattr" long_name="ocean eulerian heat transport along i-axis" unit="W"/>345 <field id="u_salttr" long_name="ocean eulerian salt transport along i-axis" unit="PSU*kg/s"/>346 <field id="ueiv_heattr" long_name="ocean bolus heat transport along i-axis" unit="W"/>347 <field id="udiff_heattr" long_name="ocean diffusion heat transport along i-axis" unit="W"/>362 <field id="u_masstr" long_name="ocean eulerian mass transport along i-axis" unit="kg/s" grid_ref="grid_U_3D" /> 363 <field id="u_heattr" long_name="ocean eulerian heat transport along i-axis" unit="W" /> 364 <field id="u_salttr" long_name="ocean eulerian salt transport along i-axis" unit="PSU*kg/s" /> 365 <field id="ueiv_heattr" long_name="ocean bolus heat transport along i-axis" unit="W" /> 366 <field id="udiff_heattr" long_name="ocean diffusion heat transport along i-axis" unit="W" /> 348 367 </field_group> 349 368 … … 351 370 352 371 <field_group id="grid_V" grid_ref="grid_V_2D"> 353 <field id="vtau" long_name="Wind Stress along j-axis" unit="N/m2" /> 354 <field id="voce" long_name="ocean current along j-axis" unit="m/s" grid_ref="grid_V_3D" /> 355 <field id="ssv" long_name="ocean surface current along j-axis" unit="m/s" /> 356 <field id="vocetr_eff" long_name="Effective ocean transport along j-axis" unit="m3/s" grid_ref="grid_V_3D" /> 372 <field id="e3v" long_name="V-cell thickness" unit="m" grid_ref="grid_V_3D" /> 373 <field id="vtau" long_name="Wind Stress along j-axis" unit="N/m2" /> 374 <field id="voce" long_name="ocean current along j-axis" unit="m/s" grid_ref="grid_V_3D" /> 375 <field id="voce_e3v" long_name="ocean current along j-axis * e3v" unit="m2/s" grid_ref="grid_V_3D" > voce * e3v </field> 376 <field id="ssv" long_name="ocean surface current along j-axis" unit="m/s" /> 377 <field id="sbv" long_name="ocean bottom current along j-axis" unit="m/s" /> 378 <field id="vocetr_eff" long_name="Effective ocean transport along j-axis" unit="m3/s" grid_ref="grid_V_3D" /> 357 379 <field id="vocet" long_name="ocean transport along j-axis times temperature" unit="degC.m/s" grid_ref="grid_V_3D" /> 358 380 <field id="voces" long_name="ocean transport along j-axis times salinity" unit="psu.m/s" grid_ref="grid_V_3D" /> 359 381 <!-- variables available with MLE --> 360 <field id="psiv_mle" long_name="MLE streamfunction along j-axis" unit="m3/s" grid_ref="grid_V_3D"/>382 <field id="psiv_mle" long_name="MLE streamfunction along j-axis" unit="m3/s" grid_ref="grid_V_3D" /> 361 383 <!-- voce_eiv: available with key_traldf_eiv and key_diaeiv --> 362 <field id="voce_eiv" long_name="EIV ocean current along j-axis" unit="m/s"grid_ref="grid_V_3D" />384 <field id="voce_eiv" long_name="EIV ocean current along j-axis" unit="m/s" grid_ref="grid_V_3D" /> 363 385 <!-- voce_eiv: available with key_trabbl --> 364 <field id="voce_bbl" long_name="BBL ocean current along j-axis" unit="m/s"grid_ref="grid_V_3D" />365 <field id="ahv_bbl" long_name="BBL diffusive flux along j-axis" unit="m3/s"/>386 <field id="voce_bbl" long_name="BBL ocean current along j-axis" unit="m/s" grid_ref="grid_V_3D" /> 387 <field id="ahv_bbl" long_name="BBL diffusive flux along j-axis" unit="m3/s" /> 366 388 <!-- variable for ice shelves --> 367 <field id="vtbl" long_name="meridional current in the Losh tbl" unit="m/s" axis_ref="none"/>389 <field id="vtbl" long_name="meridional current in the Losh tbl" unit="m/s" /> 368 390 <!-- variables available with key_diaar5 --> 369 <field id="v_masstr" long_name="ocean eulerian mass transport along j-axis" unit="kg/s"grid_ref="grid_V_3D" />370 <field id="v_heattr" long_name="ocean eulerian heat transport along j-axis" unit="W"/>371 <field id="v_salttr" long_name="ocean eulerian salt transport along i-axis" unit="PSU*kg/s"/>372 <field id="veiv_heattr" long_name="ocean bolus heat transport along j-axis" unit="W"/>373 <field id="vdiff_heattr" long_name="ocean diffusion heat transport along j-axis" unit="W"/>391 <field id="v_masstr" long_name="ocean eulerian mass transport along j-axis" unit="kg/s" grid_ref="grid_V_3D" /> 392 <field id="v_heattr" long_name="ocean eulerian heat transport along j-axis" unit="W" /> 393 <field id="v_salttr" long_name="ocean eulerian salt transport along i-axis" unit="PSU*kg/s" /> 394 <field id="veiv_heattr" long_name="ocean bolus heat transport along j-axis" unit="W" /> 395 <field id="vdiff_heattr" long_name="ocean diffusion heat transport along j-axis" unit="W" /> 374 396 </field_group> 375 397 … … 377 399 378 400 <field_group id="grid_W" grid_ref="grid_W_3D"> 401 <field id="e3w" long_name="W-cell thickness" unit="m" /> 379 402 <field id="woce" long_name="ocean vertical velocity" unit="m/s" /> 403 <field id="woce_e3w" long_name="ocean vertical velocity * e3v" unit="m2/s" > woce * e3w </field> 380 404 <field id="wocetr_eff" long_name="effective ocean vertical transport" unit="m3/s" /> 381 405 <!-- woce_eiv: available with key_traldf_eiv and key_diaeiv --> … … 430 454 <field_group id="SBC_scalar" domain_ref="1point" > 431 455 <!-- available with ln_limdiaout --> 432 <field id="ibgvoltot" long_name="global mean ice volume" unit="km3" />433 <field id="sbgvoltot" long_name="global mean snow volume" unit="km3" />434 <field id="ibgarea" long_name="global mean ice area" unit="km2" />435 <field id="ibgsaline" long_name="global mean ice salinity" unit="psu" />436 <field id="ibgtemper" long_name="global mean ice temperature" unit="degC" />456 <field id="ibgvoltot" long_name="global mean ice volume" unit="km3" /> 457 <field id="sbgvoltot" long_name="global mean snow volume" unit="km3" /> 458 <field id="ibgarea" long_name="global mean ice area" unit="km2" /> 459 <field id="ibgsaline" long_name="global mean ice salinity" unit="psu" /> 460 <field id="ibgtemper" long_name="global mean ice temperature" unit="degC" /> 437 461 <field id="ibgheatco" long_name="global mean ice heat content" unit="10^20J" /> 438 462 <field id="sbgheatco" long_name="global mean snow heat content" unit="10^20J" /> 439 <field id="ibgsaltco" long_name="global mean ice salt content" unit="psu*km3" 463 <field id="ibgsaltco" long_name="global mean ice salt content" unit="psu*km3" /> 440 464 441 465 <field id="ibgvfx" long_name="global mean volume flux (emp)" unit="m/day" /> … … 466 490 467 491 <field id="ibghfxthd" long_name="heat fluxes from ice-ocean exchange during thermo" unit="W" /> 468 <field id="ibghfxsum" long_name="heat fluxes causing surface ice melt" unit="W" />469 <field id="ibghfxbom" long_name="heat fluxes causing bottom ice melt" unit="W" />470 <field id="ibghfxbog" long_name="heat fluxes causing bottom ice growth" unit="W" />471 <field id="ibghfxdif" long_name="heat fluxes causing ice temperature change" unit="W" />472 <field id="ibghfxopw" long_name="heat fluxes causing open water ice formation" unit="W" />492 <field id="ibghfxsum" long_name="heat fluxes causing surface ice melt" unit="W" /> 493 <field id="ibghfxbom" long_name="heat fluxes causing bottom ice melt" unit="W" /> 494 <field id="ibghfxbog" long_name="heat fluxes causing bottom ice growth" unit="W" /> 495 <field id="ibghfxdif" long_name="heat fluxes causing ice temperature change" unit="W" /> 496 <field id="ibghfxopw" long_name="heat fluxes causing open water ice formation" unit="W" /> 473 497 <field id="ibghfxdyn" long_name="heat fluxes from ice-ocean exchange during dynamic" unit="W" /> 474 498 <field id="ibghfxres" long_name="heat fluxes from ice-ocean exchange during resultant" unit="W" /> … … 479 503 480 504 <field id="ibgfrcvol" long_name="global mean forcing volume (emp)" unit="km3" /> 481 <field id="ibgfrcsfx" long_name="global mean forcing salt (sfx)" unit="psu*km3" 505 <field id="ibgfrcsfx" long_name="global mean forcing salt (sfx)" unit="psu*km3" /> 482 506 <field id="ibgvolgrm" long_name="global mean ice growth+melt volume" unit="km3" /> 483 507 </field_group> -
trunk/NEMOGCM/NEMO/OPA_SRC/DIA/diaar5.F90
r4990 r5107 82 82 CALL wrk_alloc( jpi , jpj , jpk , zrhd , zrhop ) 83 83 CALL wrk_alloc( jpi , jpj , jpk , jpts , ztsn ) 84 85 CALL iom_put( 'cellthc', fse3t(:,:,:) )86 84 87 85 zarea_ssh(:,:) = area(:,:) * sshn(:,:) -
trunk/NEMOGCM/NEMO/OPA_SRC/DIA/diawri.F90
r4990 r5107 142 142 ENDIF 143 143 144 IF( lk_vvl ) THEN 145 z3d(:,:,:) = tsn(:,:,:,jp_tem) * fse3t_n(:,:,:) 146 CALL iom_put( "toce" , z3d ) ! heat content 144 IF( .NOT.lk_vvl ) THEN 145 CALL iom_put( "e3t" , fse3t_n(:,:,:) ) 146 CALL iom_put( "e3u" , fse3u_n(:,:,:) ) 147 CALL iom_put( "e3v" , fse3v_n(:,:,:) ) 148 CALL iom_put( "e3w" , fse3w_n(:,:,:) ) 149 ENDIF 150 151 CALL iom_put( "toce", tsn(:,:,:,jp_tem) ) ! 3D temperature 152 CALL iom_put( "sst", tsn(:,:,1,jp_tem) ) ! surface temperature 153 IF ( iom_use("sbt") ) THEN 147 154 DO jj = 1, jpj 148 155 DO ji = 1, jpi 149 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_tem) * fse3t_n(ji,jj,mikt(ji,jj)) 150 END DO 151 END DO 152 CALL iom_put( "sst" , z2d(:,:) ) ! sea surface heat content 156 z2d(ji,jj) = tsn(ji,jj,MAX(mbathy(ji,jj),1),jp_tem) 157 END DO 158 END DO 159 CALL iom_put( "sbt", z2d ) ! bottom temperature 160 ENDIF 161 162 CALL iom_put( "soce", tsn(:,:,:,jp_sal) ) ! 3D salinity 163 CALL iom_put( "sss", tsn(:,:,1,jp_sal) ) ! surface salinity 164 IF ( iom_use("sbs") ) THEN 153 165 DO jj = 1, jpj 154 166 DO ji = 1, jpi 155 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_tem)**2 * fse3t_n(ji,jj,mikt(ji,jj)) 156 END DO 157 END DO 158 CALL iom_put( "sst2" , z2d(:,:) ) ! sea surface content of squared temperature 159 z3d(:,:,:) = tsn(:,:,:,jp_sal) * fse3t_n(:,:,:) 160 CALL iom_put( "soce" , z3d ) ! salinity content 167 z2d(ji,jj) = tsn(ji,jj,MAX(mbathy(ji,jj),1),jp_sal) 168 END DO 169 END DO 170 CALL iom_put( "sbs", z2d ) ! bottom salinity 171 ENDIF 172 173 CALL iom_put( "uoce", un(:,:,:) ) ! 3D i-current 174 CALL iom_put( "ssu", un(:,:,1) ) ! surface i-current 175 IF ( iom_use("sbu") ) THEN 161 176 DO jj = 1, jpj 162 177 DO ji = 1, jpi 163 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_sal) * fse3t_n(ji,jj,mikt(ji,jj)) 164 END DO 165 END DO 166 CALL iom_put( "sss" , z2d(:,:) ) ! sea surface salinity content 178 z2d(ji,jj) = un(ji,jj,MAX(mbathy(ji,jj),1)) 179 END DO 180 END DO 181 CALL iom_put( "sbu", z2d ) ! bottom i-current 182 ENDIF 183 184 CALL iom_put( "voce", vn(:,:,:) ) ! 3D j-current 185 CALL iom_put( "ssv", vn(:,:,1) ) ! surface j-current 186 IF ( iom_use("sbv") ) THEN 167 187 DO jj = 1, jpj 168 188 DO ji = 1, jpi 169 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_sal)**2 * fse3t_n(ji,jj,mikt(ji,jj)) 170 END DO 171 END DO 172 CALL iom_put( "sss2" , z2d(:,:) ) ! sea surface content of squared salinity 173 ELSE 174 CALL iom_put( "toce" , tsn(:,:,:,jp_tem) ) ! temperature 175 IF ( iom_use("sst") ) THEN 176 DO jj = 1, jpj 177 DO ji = 1, jpi 178 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_tem) 179 END DO 180 END DO 181 CALL iom_put( "sst" , z2d(:,:) ) ! sea surface temperature 182 ENDIF 183 IF ( iom_use("sst2") ) CALL iom_put( "sst2" , z2d(:,:) * z2d(:,:) ) ! square of sea surface temperature 184 CALL iom_put( "soce" , tsn(:,:,:,jp_sal) ) ! salinity 185 IF ( iom_use("sss") ) THEN 186 DO jj = 1, jpj 187 DO ji = 1, jpi 188 z2d(ji,jj) = tsn(ji,jj,mikt(ji,jj),jp_sal) 189 END DO 190 END DO 191 CALL iom_put( "sss" , z2d(:,:) ) ! sea surface salinity 192 ENDIF 193 CALL iom_put( "sss2" , z2d(:,:) * z2d(:,:) ) ! square of sea surface salinity 194 END IF 195 IF( lk_vvl .AND. (.NOT. ln_dynadv_vec) ) THEN 196 CALL iom_put( "uoce" , umask(:,:,:) * un(:,:,:) * fse3u_n(:,:,:) ) ! i-transport 197 CALL iom_put( "voce" , vmask(:,:,:) * vn(:,:,:) * fse3v_n(:,:,:) ) ! j-transport 198 ELSE 199 CALL iom_put( "uoce" , umask(:,:,:) * un(:,:,:) ) ! i-current 200 CALL iom_put( "voce" , vmask(:,:,:) * vn(:,:,:) ) ! j-current 201 IF ( iom_use("ssu") ) THEN 202 DO jj = 1, jpj 203 DO ji = 1, jpi 204 z2d(ji,jj) = un(ji,jj,miku(ji,jj)) 205 END DO 206 END DO 207 CALL iom_put( "ssu" , z2d ) ! i-current 208 ENDIF 209 IF ( iom_use("ssv") ) THEN 210 DO jj = 1, jpj 211 DO ji = 1, jpi 212 z2d(ji,jj) = vn(ji,jj,mikv(ji,jj)) 213 END DO 214 END DO 215 CALL iom_put( "ssv" , z2d ) ! j-current 216 ENDIF 217 ENDIF 218 CALL iom_put( "avt" , avt ) ! T vert. eddy diff. coef. 219 CALL iom_put( "avm" , avmu ) ! T vert. eddy visc. coef. 220 IF( lk_zdfddm ) THEN 221 CALL iom_put( "avs" , fsavs(:,:,:) ) ! S vert. eddy diff. coef. 222 ENDIF 223 224 IF ( iom_use("sstgrad2") .OR. iom_use("sstgrad2") ) THEN 189 z2d(ji,jj) = vn(ji,jj,MAX(mbathy(ji,jj),1)) 190 END DO 191 END DO 192 CALL iom_put( "sbv", z2d ) ! bottom j-current 193 ENDIF 194 195 CALL iom_put( "avt" , avt ) ! T vert. eddy diff. coef. 196 CALL iom_put( "avm" , avmu ) ! T vert. eddy visc. coef. 197 CALL iom_put( "avs" , fsavs(:,:,:) ) ! S vert. eddy diff. coef. (useful only with key_zdfddm) 198 199 IF ( iom_use("sstgrad") .OR. iom_use("sstgrad2") ) THEN 225 200 DO jj = 2, jpjm1 ! sst gradient 226 201 DO ji = fs_2, fs_jpim1 ! vector opt. … … 234 209 CALL lbc_lnk( z2d, 'T', 1. ) 235 210 CALL iom_put( "sstgrad2", z2d ) ! square of module of sst gradient 236 !CDIR NOVERRCHK<237 211 z2d(:,:) = SQRT( z2d(:,:) ) 238 212 CALL iom_put( "sstgrad" , z2d ) ! module of sst gradient … … 243 217 z2d(:,:) = 0._wp 244 218 DO jk = 1, jpkm1 245 DO jj = 2, jpjm1246 DO ji = fs_2, fs_jpim1 ! vector opt.219 DO jj = 1, jpj 220 DO ji = 1, jpi 247 221 z2d(ji,jj) = z2d(ji,jj) + fse3t(ji,jj,jk) * tsn(ji,jj,jk,jp_tem) * tmask(ji,jj,jk) 248 222 END DO 249 223 END DO 250 224 END DO 251 CALL lbc_lnk( z2d, 'T', 1. )252 225 CALL iom_put( "heatc", (rau0 * rcp) * z2d ) ! vertically integrated heat content (J/m2) 253 226 ENDIF … … 256 229 z2d(:,:) = 0._wp 257 230 DO jk = 1, jpkm1 258 DO jj = 2, jpjm1259 DO ji = fs_2, fs_jpim1 ! vector opt.231 DO jj = 1, jpj 232 DO ji = 1, jpi 260 233 z2d(ji,jj) = z2d(ji,jj) + fse3t(ji,jj,jk) * tsn(ji,jj,jk,jp_sal) * tmask(ji,jj,jk) 261 234 END DO 262 235 END DO 263 236 END DO 264 CALL lbc_lnk( z2d, 'T', 1. )265 237 CALL iom_put( "saltc", rau0 * z2d ) ! vertically integrated salt content (PSU*kg/m2) 266 238 ENDIF -
trunk/NEMOGCM/NEMO/OPA_SRC/DOM/domvvl.F90
r4998 r5107 588 588 INTEGER, INTENT( in ) :: kt ! time step 589 589 !! * Local declarations 590 REAL(wp), POINTER, DIMENSION(:,:,:) :: z_e3t_def591 590 INTEGER :: ji,jj,jk ! dummy loop indices 592 591 !!---------------------------------------------------------------------- 593 592 594 593 IF( nn_timing == 1 ) CALL timing_start('dom_vvl_sf_swp') 595 !596 CALL wrk_alloc( jpi, jpj, jpk, z_e3t_def )597 594 ! 598 595 IF( kt == nit000 ) THEN … … 679 676 ! Write outputs 680 677 ! ============= 681 z_e3t_def(:,:,:) = ( ( fse3t_n(:,:,:) - e3t_0(:,:,:) ) / e3t_0(:,:,:) * 100 * tmask(:,:,:) ) ** 2 682 CALL iom_put( "cellthc" , fse3t_n (:,:,:) ) 678 CALL iom_put( "e3t" , fse3t_n (:,:,:) ) 679 CALL iom_put( "e3u" , fse3u_n (:,:,:) ) 680 CALL iom_put( "e3v" , fse3v_n (:,:,:) ) 681 CALL iom_put( "e3w" , fse3w_n (:,:,:) ) 683 682 CALL iom_put( "tpt_dep" , fsde3w_n (:,:,:) ) 684 CALL iom_put( "e3tdef" , z_e3t_def(:,:,:) ) 683 IF( iom_use("e3tdef") ) & 684 CALL iom_put( "e3tdef" , ( ( fse3t_n(:,:,:) - e3t_0(:,:,:) ) / e3t_0(:,:,:) * 100 * tmask(:,:,:) ) ** 2 ) 685 685 686 686 ! write restart file 687 687 ! ================== 688 688 IF( lrst_oce ) CALL dom_vvl_rst( kt, 'WRITE' ) 689 !690 CALL wrk_dealloc( jpi, jpj, jpk, z_e3t_def )691 689 ! 692 690 IF( nn_timing == 1 ) CALL timing_stop('dom_vvl_sf_swp')
Note: See TracChangeset
for help on using the changeset viewer.