Changeset 3940 for trunk/NEMOGCM
- Timestamp:
- 2013-06-26T10:10:12+02:00 (11 years ago)
- Location:
- trunk/NEMOGCM
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/NEMOGCM/CONFIG/AMM12/EXP00/iodef.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="10d" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> -
trunk/NEMOGCM/CONFIG/GYRE/EXP00/iodef.xml
r3866 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1d" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> … … 33 35 <file_group id="5d" output_freq="5d" output_level="10" enabled=".TRUE."> <!-- 5d files --> 34 36 35 <file id="5d_grid_T" name="auto" description="ocean T grid variables" >37 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 36 38 <field field_ref="toce" name="votemper" /> 37 39 <field field_ref="soce" name="vosaline" /> … … 47 49 </file> 48 50 49 <file id="5d_grid_U" name="auto" description="ocean U grid variables" >51 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 50 52 <field field_ref="uoce" name="vozocrtx" /> 51 53 <field field_ref="utau" name="sozotaux" /> 52 54 </file> 53 55 54 <file id="5d_grid_V" name="auto" description="ocean V grid variables" >56 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 55 57 <field field_ref="voce" name="vomecrty" /> 56 58 <field field_ref="vtau" name="sometauy" /> 57 59 </file> 58 60 59 <file id="5d_grid_W" name="auto" description="ocean W grid variables" >61 <file id="file4" name_suffix="_grid_W" description="ocean W grid variables" > 60 62 <field field_ref="woce" name="vovecrtz" /> 61 63 <field field_ref="avt" name="votkeavt" /> -
trunk/NEMOGCM/CONFIG/GYRE_BFM/EXP00/iodef.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="10d" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> -
trunk/NEMOGCM/CONFIG/GYRE_PISCES/EXP00/iodef.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="10d" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> … … 33 35 <file_group id="5d" output_freq="5d" output_level="10" enabled=".TRUE."> <!-- 5d files --> 34 36 35 <file id=" 5d_grid_T" name="auto" description="ocean T grid variables" >37 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 36 38 <field field_ref="toce" name="votemper" /> 37 39 <field field_ref="soce" name="vosaline" /> … … 47 49 </file> 48 50 49 <file id=" 5d_grid_U" name="auto" description="ocean U grid variables" >51 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 50 52 <field field_ref="uoce" name="vozocrtx" /> 51 53 <field field_ref="utau" name="sozotaux" /> 52 54 </file> 53 55 54 <file id=" 5d_grid_V" name="auto" description="ocean V grid variables" >56 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 55 57 <field field_ref="voce" name="vomecrty" /> 56 58 <field field_ref="vtau" name="sometauy" /> 57 59 </file> 58 60 59 <file id=" 5d_grid_W" name="auto" description="ocean W grid variables" >61 <file id="file4" name_suffix="_grid_W" description="ocean W grid variables" > 60 62 <field field_ref="woce" name="vovecrtz" /> 61 63 <field field_ref="avt" name="votkeavt" /> … … 63 65 </file> 64 66 65 <file id=" 5d_ptrc_T" name="auto" description="lobster sms variables" >67 <file id="file5" name="_ptrc_T" description="lobster sms variables" > 66 68 <field field_ref="DET" /> 67 69 <field field_ref="ZOO" /> … … 82 84 <file_group id="1y" output_freq="1y" output_level="10" enabled=".TRUE."> <!-- real yearly files --> 83 85 84 <file id=" 1y_diad_T" name="auto" description="additional lobster diagnostics" >86 <file id="file6" name_suffix="_diad_T" description="additional lobster diagnostics" > 85 87 <field field_ref="FNO3PHY" /> 86 88 <field field_ref="FNH4PHY" /> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_ar5.xml
r3771 r3940 26 26 --> 27 27 28 <file_definition type="multiple_file" output_level="10" sync_freq="1d" min_digits="4">28 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" output_level="10" sync_freq="2mo" min_digits="4"> 29 29 <!-- 30 30 +++++++++++++++++++++++++++++++++++++++++++++++ daily ++++++++++++++++++++++++++++++++++++++++++++++++++ 31 31 --> 32 32 <file_group id="1d" output_freq="1d" enabled=".TRUE."> <!-- 1d files --> 33 <file id=" 1d_grid_T" name="auto" name_suffix="_table2.2" > <!-- grid T -->33 <file id="file1" name_suffix="_grid_T_table2.2" > <!-- grid T --> 34 34 <field field_ref="sst" name='tos' long_name="sea_surface_temperature" level="2" /> 35 35 <field field_ref="sst2" name='tossq' long_name="square_of_sea_surface_temperature" level="2" /> … … 43 43 <!-- 44 44 .............................................. grid T ................................................. 45 --> 46 <file_group id="1m_grid_T" name="auto" > <!-- grid T --> 47 48 <file id="1m grid_T table 2.2" name_suffix="_table2.2" > 49 <field field_ref="botpres" name="pbo" long_name="sea_water_pressure_at_sea_floor" /> 50 <!-- pso : sea_water_pressure_at_sea_water_surface = 0 --> 51 <field field_ref="ssh" name="zos" long_name="sea_surface_height_above_geoid" /> 52 <field field_ref="ssh2" name="zossq" long_name="square_of_sea_surface_height_above_geoid" level="2" /> 53 <!-- masscello : sea_water_mass_per_unit_area = cellthc*rau0 no time changes --> 54 <field field_ref="cellthc" name="thkcello" long_name="cell_thickness" /> <!-- no time changes --> 55 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 56 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" level="1" /> 57 <field field_ref="sst2" name="tossq" long_name="square_of_sea_surface_temperature" level="2" /> 58 <field field_ref="soce" name="so" long_name="sea_water_salinity" /> 59 <field field_ref="sss" name="sos" long_name="sea_surface_salinity" level="1" /> 60 <field field_ref="rhop" name="rhopoto" long_name="sea_water_potential_density" level="2" /> 61 <!-- no agessc : sea_water_age_since_surface_contact --> 62 <!-- no cfc11 : moles_per_unit_mass_of_cfc11_in_sea_water --> 63 <!-- msftbarot : ocean_barotropic_mass_streamfunction : offline --> 64 <!-- mlotst : ocean_mixed_layer_thickness_defined_by_sigma_t : must be done offline --> 65 <!-- mlotstsq : square_of_ocean_mixed_layer_thickness_defined_by_sigma_t : must be done offline --> 66 <field field_ref="mldkz5" name='omlmax' long_name="ocean_mixed_layer_thickness_defined_by_mixing_scheme" level="2" operation="maximum" /> 67 </file> 68 69 <file id="1m grid_T table 2.5" name_suffix="_table2.5" > 70 <field field_ref="rain" name="pr" long_name="rainfall_flux" level="1" /> 71 <field field_ref="snow_ao_cea" name="prsn" long_name="snowfall_flux" level="1" /> 72 <field field_ref="evap_ao_cea" name="evs" long_name="water_evaporation_flux" level="1" /> 73 <field field_ref="runoffs" name="friver" long_name="water_flux_into_sea_water_from_rivers" level="1" /> 74 <field field_ref="calving" name="ficeberg" long_name="water_flux_into_sea_water_from_icebergs" level="1" /> 75 <field field_ref="isnwmlt_cea" name="fsitherm" long_name="water_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 76 <field field_ref="empmr" name="wfo" long_name="water_flux_into_sea_water" level="1" /> 77 <!-- wfonocorr : water_flux_into_sea_water_without_flux_correction : emp - erp --> 78 <field field_ref="erp" name="wfcorr" long_name="water_flux_correction" level="1" /> <!-- usually = 0 --> 79 </file> 80 81 <file id="1m grid_T table 2.6" name_suffix="_table2.6" > 82 <!-- vsfpr : virtual_salt_flux_into_sea_water_due_to_rainfall = 0 --> 83 <!-- vsfevap : virtual_salt_flux_into_sea_water_due_to_evaporation = 0 --> 84 <!-- vsfriver : virtual_salt_flux_into_sea_water_from_rivers = 0 --> 85 <field field_ref="fsal_virt_cea" name="vsfsit" long_name="virtual_salt_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 86 <!-- vsf : virtual_salt_flux_into_sea_water = fsal_virtual + fsal_real --> 87 <!-- wfcorr : virtual_salt_flux_correction = 0 --> 88 <field field_ref="fsal_virt_cea" name="sfdsi" long_name="downward_sea_ice_basal_salt_flux" level="1" /> 89 <!-- sfriver : salt_flux_into_sea_water_from_rivers = 0 --> 90 </file> 91 92 <file id="1m grid_T table 2.7" name_suffix="_table2.7" > 93 <!-- hfgeou : upward_geothermal_heat_flux_at_sea_floor : cte, see nambbc and trabbc.F90 --> 94 <field field_ref="hflx_rain_cea" name="hfrainds" long_name="temperature_flux_due_to_rainfall_expressed_as_heat_flux_into_sea_water" level="1" /> 95 <field field_ref="hflx_evap_cea" name="hfevapds" long_name="temperature_flux_due_to_evaporation_expressed_as_heat_flux_out_of_sea_water" level="1" /> 96 <field field_ref="hflx_rnf_cea" name="hfrunoffds" long_name="temperature_flux_due_to_runoff_expressed_as_heat_flux_into_sea_water" level="1" /> 97 <field field_ref="hflx_snow_cea" name="hfsnthermds" long_name="heat_flux_into_sea_water_due_to_snow_thermodynamics" level="1" /> 98 <field field_ref="hflx_ice_cea" name="hfsithermds" long_name="heat_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 99 <field field_ref="hflx_cal_cea" name="hfibthermds" long_name="heat_flux_into_sea_water_due_to_iceberg_thermodynamics" level="1" /> 100 <!-- rlds : surface_net_downward_longwave_flux : not available --> 101 <!-- hfls : surface_downward_latent_heat_flux : not available --> 102 <!-- hfss : surface_downward_sensible_heat_flux: not available --> 103 <field field_ref="qns" name="nshfls" long_name="surface_net_downward_non_solar_flux" level="1" /> 104 <field field_ref="qsr" name="rsntds" long_name="surface_net_downward_shortwave_flux" level="1" /> 105 <field field_ref="qsr3d" name="rsds" long_name="downwelling_shortwave_flux_in_sea_water" level="1" /> 106 <field field_ref="qrp" name="hfcorr" long_name="heat_flux_correction" level="1" /> 107 </file> 108 </file_group> 45 --> 46 <file id="file2" name_suffix="_grid_T_table2.2" > 47 <field field_ref="botpres" name="pbo" long_name="sea_water_pressure_at_sea_floor" /> 48 <!-- pso : sea_water_pressure_at_sea_water_surface = 0 --> 49 <field field_ref="ssh" name="zos" long_name="sea_surface_height_above_geoid" /> 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 --> 53 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 54 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" level="1" /> 55 <field field_ref="sst2" name="tossq" long_name="square_of_sea_surface_temperature" level="2" /> 56 <field field_ref="soce" name="so" long_name="sea_water_salinity" /> 57 <field field_ref="sss" name="sos" long_name="sea_surface_salinity" level="1" /> 58 <field field_ref="rhop" name="rhopoto" long_name="sea_water_potential_density" level="2" /> 59 <!-- no agessc : sea_water_age_since_surface_contact --> 60 <!-- no cfc11 : moles_per_unit_mass_of_cfc11_in_sea_water --> 61 <!-- msftbarot : ocean_barotropic_mass_streamfunction : offline --> 62 <!-- mlotst : ocean_mixed_layer_thickness_defined_by_sigma_t : must be done offline --> 63 <!-- mlotstsq : square_of_ocean_mixed_layer_thickness_defined_by_sigma_t : must be done offline --> 64 <field field_ref="mldkz5" name='omlmax' long_name="ocean_mixed_layer_thickness_defined_by_mixing_scheme" level="2" operation="maximum" /> 65 </file> 66 67 <file id="file3" name_suffix="_grid_T_table2.5" > 68 <field field_ref="rain" name="pr" long_name="rainfall_flux" level="1" /> 69 <field field_ref="snow_ao_cea" name="prsn" long_name="snowfall_flux" level="1" /> 70 <field field_ref="evap_ao_cea" name="evs" long_name="water_evaporation_flux" level="1" /> 71 <field field_ref="runoffs" name="friver" long_name="water_flux_into_sea_water_from_rivers" level="1" /> 72 <field field_ref="calving" name="ficeberg" long_name="water_flux_into_sea_water_from_icebergs" level="1" /> 73 <field field_ref="isnwmlt_cea" name="fsitherm" long_name="water_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 74 <field field_ref="empmr" name="wfo" long_name="water_flux_into_sea_water" level="1" /> 75 <!-- wfonocorr : water_flux_into_sea_water_without_flux_correction : emp - erp --> 76 <field field_ref="erp" name="wfcorr" long_name="water_flux_correction" level="1" /> <!-- usually = 0 --> 77 </file> 78 79 <file id="file4" name_suffix="_grid_T_table2.6" > 80 <!-- vsfpr : virtual_salt_flux_into_sea_water_due_to_rainfall = 0 --> 81 <!-- vsfevap : virtual_salt_flux_into_sea_water_due_to_evaporation = 0 --> 82 <!-- vsfriver : virtual_salt_flux_into_sea_water_from_rivers = 0 --> 83 <field field_ref="fsal_virt_cea" name="vsfsit" long_name="virtual_salt_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 84 <!-- vsf : virtual_salt_flux_into_sea_water = fsal_virtual + fsal_real --> 85 <!-- wfcorr : virtual_salt_flux_correction = 0 --> 86 <field field_ref="fsal_virt_cea" name="sfdsi" long_name="downward_sea_ice_basal_salt_flux" level="1" /> 87 <!-- sfriver : salt_flux_into_sea_water_from_rivers = 0 --> 88 </file> 89 90 <file id="file5" name_suffix="_grid_T_table2.7" > 91 <!-- hfgeou : upward_geothermal_heat_flux_at_sea_floor : cte, see nambbc and trabbc.F90 --> 92 <field field_ref="hflx_rain_cea" name="hfrainds" long_name="temperature_flux_due_to_rainfall_expressed_as_heat_flux_into_sea_water" level="1" /> 93 <field field_ref="hflx_evap_cea" name="hfevapds" long_name="temperature_flux_due_to_evaporation_expressed_as_heat_flux_out_of_sea_water" level="1" /> 94 <field field_ref="hflx_rnf_cea" name="hfrunoffds" long_name="temperature_flux_due_to_runoff_expressed_as_heat_flux_into_sea_water" level="1" /> 95 <field field_ref="hflx_snow_cea" name="hfsnthermds" long_name="heat_flux_into_sea_water_due_to_snow_thermodynamics" level="1" /> 96 <field field_ref="hflx_ice_cea" name="hfsithermds" long_name="heat_flux_into_sea_water_due_to_sea_ice_thermodynamics" level="1" /> 97 <field field_ref="hflx_cal_cea" name="hfibthermds" long_name="heat_flux_into_sea_water_due_to_iceberg_thermodynamics" level="1" /> 98 <!-- rlds : surface_net_downward_longwave_flux : not available --> 99 <!-- hfls : surface_downward_latent_heat_flux : not available --> 100 <!-- hfss : surface_downward_sensible_heat_flux: not available --> 101 <field field_ref="qns" name="nshfls" long_name="surface_net_downward_non_solar_flux" level="1" /> 102 <field field_ref="qsr" name="rsntds" long_name="surface_net_downward_shortwave_flux" level="1" /> 103 <field field_ref="qsr3d" name="rsds" long_name="downwelling_shortwave_flux_in_sea_water" level="1" /> 104 <field field_ref="qrp" name="hfcorr" long_name="heat_flux_correction" level="1" /> 105 </file> 109 106 <!-- 110 107 .............................................. grid U ................................................. 111 --> 112 <file_group id="1m_grid_U" name="auto" > <!-- grid U --> 113 114 <file id="1m grid_U table 2.3" name_suffix="_table2.3" > 115 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 116 <field field_ref="u_masstr" name="umo" long_name="ocean_mass_x_transport" level="1" /> 117 <field field_ref="u_heattr" name="hfx" long_name="ocean_heat_x_transport" level="1" /> 118 <field field_ref="ueiv_heattr" name="hfxba" long_name="ocean_heat_x_transport_due_to_bolus_advection" level="2" /> 119 <field field_ref="udiff_heattr" name="hfxdiff" long_name="ocean_heat_x_transport_due_to_diffusion" level="2" /> 120 </file> 121 122 <file id="1m grid_U table 2.8" name_suffix="_table2.8" > 123 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" level="1" /> 124 <!-- tauucorr : surface_downward_x_stress_correction = 0 --> 125 </file> 126 127 </file_group> 108 --> 109 <file id="file6" name_suffix="_grid_U_table2.3" > 110 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 111 <field field_ref="u_masstr" name="umo" long_name="ocean_mass_x_transport" level="1" /> 112 <field field_ref="u_heattr" name="hfx" long_name="ocean_heat_x_transport" level="1" /> 113 <field field_ref="ueiv_heattr" name="hfxba" long_name="ocean_heat_x_transport_due_to_bolus_advection" level="2" /> 114 <field field_ref="udiff_heattr" name="hfxdiff" long_name="ocean_heat_x_transport_due_to_diffusion" level="2" /> 115 </file> 116 117 <file id="file7" name_suffix="_grid_U_table2.8" > 118 <field field_ref="utau" name="tauuo" long_name="surface_downward_x_stress" level="1" /> 119 <!-- tauucorr : surface_downward_x_stress_correction = 0 --> 120 </file> 128 121 <!-- 129 122 .............................................. grid V ................................................. 130 --> 131 <file_group id="1m_grid_V" name="auto" > <!-- grid V --> 132 133 <file id="1m grid_V table 2.3" name_suffix="_table2.3" > 134 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 135 <field field_ref="v_masstr" name="vmo" long_name="ocean_mass_y_transport" level="1" /> 136 <field field_ref="v_heattr" name="hfy" long_name="ocean_heat_y_transport" level="1" /> 137 <field field_ref="veiv_heattr" name="hfyba" long_name="ocean_heat_y_transport_due_to_bolus_advection" level="2" /> 138 <field field_ref="vdiff_heattr" name="hfydiff" long_name="ocean_heat_y_transport_due_to_diffusion" level="2" /> 139 </file> 140 141 <file id="1m grid_V table 2.8" name_suffix="_table2.8" > 142 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" level="1" /> 143 <!-- tauvcorr : surface_downward_y_stress_correction = 0 --> 144 </file> 145 146 </file_group> 123 --> 124 <file id="file8" name_suffix="_grid_V_table2.3" > 125 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 126 <field field_ref="v_masstr" name="vmo" long_name="ocean_mass_y_transport" level="1" /> 127 <field field_ref="v_heattr" name="hfy" long_name="ocean_heat_y_transport" level="1" /> 128 <field field_ref="veiv_heattr" name="hfyba" long_name="ocean_heat_y_transport_due_to_bolus_advection" level="2" /> 129 <field field_ref="vdiff_heattr" name="hfydiff" long_name="ocean_heat_y_transport_due_to_diffusion" level="2" /> 130 </file> 131 132 <file id="file9" name_suffix="_grid_V_table2.8" > 133 <field field_ref="vtau" name="tauvo" long_name="surface_downward_y_stress" level="1" /> 134 <!-- tauvcorr : surface_downward_y_stress_correction = 0 --> 135 </file> 147 136 <!-- 148 137 .............................................. grid W ................................................. 149 --> 150 <file_group id="1m_grid_W" name="auto" > <!-- grid W --> 151 152 <file id="1m grid_W table 2.3" name_suffix="_table2.3" > 153 <field field_ref="w_masstr" name="wmo" long_name="upward_ocean_mass_transport" /> 154 <field field_ref="w_masstr2" name="wmosq" long_name="square_pf_upward_ocean_mass_transport" /> 155 </file> 156 157 <file id="1m grid_W table 2.9" name_suffix="_table2.9" > 158 <field field_ref="avt" name="difvho" long_name="ocean_vertical_heat_diffusivity" level="2" /> 159 <field field_ref="avs" name="difvso" long_name="ocean_vertical_salt_diffusivity" level="2" /> 160 <!-- difvtrbo : ocean_vertical_tracer_diffusivity_due_to_background : cte with time, see namelist parameters nn_avb and nn_havtb --> 161 <field field_ref="av_tide" name="difvtrto" long_name="ocean_vertical_tracer_diffusivity_due_to_tides" level="2" /> 162 <!-- tnpeo : tendency_of_ocean_potential_energy_content : not available --> 163 <!-- tnpeot : tendency_of_ocean_potential_energy_content_due_to_tides : not available --> 164 <!-- tnpeotb : tendency_of_ocean_potential_energy_content_due_to_background : not available --> 165 <field field_ref="avm" name="difvmo" long_name="ocean_vertical_momentum_diffusivity" level="2" /> 166 <!-- difvmbo : ocean_vertical_momentum_diffusivity_due_to_background : cte with time, see namelist parameters nn_avb --> 167 <field field_ref="av_tide" name="difvmto" long_name="ocean_vertical_momentum_diffusivity_due_to_tides" level="2" /> <!-- same as tracer --> 168 <!-- difvmfdo : ocean_vertical_momentum_diffusivity_due_to_form_drag : ??? --> 169 <!-- dispkevfo : ocean_kinetic_energy_dissipation_per_unit_area_due_to_vertical_friction : not available --> 170 </file> 171 172 <file id="1m grid_W table 2.10" name_suffix="_table2.10" > 173 <!-- if ln_traldf_lap = .true. --> 174 <field field_ref="aht2d_eiv" name="diftrblo" long_name="ocean_tracer_bolus_laplacian_diffusivity" level="2" /> 175 <!-- diftrelo : ocean_tracer_epineutral_laplacian_diffusivity : cte with time, see ln_traldf_iso --> 176 <!-- diftrxylo : ocean_tracer_xy_laplacian_diffusivity : cte with time --> 177 <!-- if ln_traldf_bilap = .true. --> 178 <!-- field field_ref="diftrbbo" name="aht2d_eiv" long_name="ocean_tracer_bolus_biharmonic_diffusivity" level="2" /--> 179 <!-- diftrebo : ocean_tracer_epineutral_biharmonic_diffusivity : cte with time, see ln_traldf_iso --> 180 <!-- diftrxybo : ocean_tracer_xy_biharmonic_diffusivity : cte with time --> 181 <!-- tnkebto : tendency_of_ocean_eddy_kinetic_energy_content_due_to_bolus_transport : not available --> 182 <!-- difmxylo : ocean_momentum_xy_laplacian_diffusivity : cte with time, see ln_dynldf_lap --> 183 <!-- difmxybo : ocean_momentum_xy_biharmonic_diffusivity : cte with time, see ln_dynldf_bilap --> 184 <!-- dispkexyfo : ocean_kinetic_energy_dissipation_per_unit_area_due_to_xy_friction : not available --> 185 </file> 186 187 </file_group> 138 --> 139 <file id="file10" name_suffix="_grid_W_table2.3" > 140 <field field_ref="w_masstr" name="wmo" long_name="upward_ocean_mass_transport" /> 141 <field field_ref="w_masstr2" name="wmosq" long_name="square_pf_upward_ocean_mass_transport" /> 142 </file> 143 144 <file id="file11" name_suffix="_grid_W_table2.9" > 145 <field field_ref="avt" name="difvho" long_name="ocean_vertical_heat_diffusivity" level="2" /> 146 <field field_ref="avs" name="difvso" long_name="ocean_vertical_salt_diffusivity" level="2" /> 147 <!-- difvtrbo : ocean_vertical_tracer_diffusivity_due_to_background : cte with time, see namelist parameters nn_avb and nn_havtb --> 148 <field field_ref="av_tide" name="difvtrto" long_name="ocean_vertical_tracer_diffusivity_due_to_tides" level="2" /> 149 <!-- tnpeo : tendency_of_ocean_potential_energy_content : not available --> 150 <!-- tnpeot : tendency_of_ocean_potential_energy_content_due_to_tides : not available --> 151 <!-- tnpeotb : tendency_of_ocean_potential_energy_content_due_to_background : not available --> 152 <field field_ref="avm" name="difvmo" long_name="ocean_vertical_momentum_diffusivity" level="2" /> 153 <!-- difvmbo : ocean_vertical_momentum_diffusivity_due_to_background : cte with time, see namelist parameters nn_avb --> 154 <field field_ref="av_tide" name="difvmto" long_name="ocean_vertical_momentum_diffusivity_due_to_tides" level="2" /> <!-- same as tracer --> 155 <!-- difvmfdo : ocean_vertical_momentum_diffusivity_due_to_form_drag : ??? --> 156 <!-- dispkevfo : ocean_kinetic_energy_dissipation_per_unit_area_due_to_vertical_friction : not available --> 157 </file> 158 159 <file id="file12" name_suffix="_grid_W_table2.10" > 160 <!-- if ln_traldf_lap = .true. --> 161 <field field_ref="aht2d_eiv" name="diftrblo" long_name="ocean_tracer_bolus_laplacian_diffusivity" level="2" /> 162 <!-- diftrelo : ocean_tracer_epineutral_laplacian_diffusivity : cte with time, see ln_traldf_iso --> 163 <!-- diftrxylo : ocean_tracer_xy_laplacian_diffusivity : cte with time --> 164 <!-- if ln_traldf_bilap = .true. --> 165 <!-- field field_ref="diftrbbo" name="aht2d_eiv" long_name="ocean_tracer_bolus_biharmonic_diffusivity" level="2" /--> 166 <!-- diftrebo : ocean_tracer_epineutral_biharmonic_diffusivity : cte with time, see ln_traldf_iso --> 167 <!-- diftrxybo : ocean_tracer_xy_biharmonic_diffusivity : cte with time --> 168 <!-- tnkebto : tendency_of_ocean_eddy_kinetic_energy_content_due_to_bolus_transport : not available --> 169 <!-- difmxylo : ocean_momentum_xy_laplacian_diffusivity : cte with time, see ln_dynldf_lap --> 170 <!-- difmxybo : ocean_momentum_xy_biharmonic_diffusivity : cte with time, see ln_dynldf_bilap --> 171 <!-- dispkexyfo : ocean_kinetic_energy_dissipation_per_unit_area_due_to_xy_friction : not available --> 172 </file> 188 173 <!-- 189 174 .............................................. scalar ................................................. 190 191 <file id=" 1m_scalar" name="auto" name_suffix="_table2.2" > <!-- scalar -->175 --> 176 <file id="file13" name_suffix="_scalar_table2.2" > <!-- scalar --> 192 177 <field field_ref="masstot" name="masso" long_name="sea_water_mass" /> 193 178 <field field_ref="voltot" name="volo" long_name="sea_water_volume" /> … … 200 185 <!-- 201 186 .............................................. icemod ................................................. 202 203 <file id=" 1m_icemod" name="auto" name_suffix="_table2.2" > <!-- scalar -->187 --> 188 <file id="file14" name_suffix="_icemod_table2.2" > <!-- scalar --> 204 189 <field field_ref="ice_pres" /> 205 190 <field field_ref="ice_cover" name="sic" long_name="sea_ice_area_fraction" /> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_default.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="10d" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> … … 31 33 <file_group id="1d" output_freq="1d" output_level="10" enabled=".TRUE."> <!-- 1d files --> 32 34 33 <file id=" 1d_grid_T" name="auto" description="ocean T grid variables" >35 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 34 36 <field field_ref="sst" name="tos" long_name="sea_surface_temperature" /> 35 37 <field field_ref="sss" name="sos" long_name="sea_surface_salinity" /> … … 37 39 </file> 38 40 39 <file id=" 1d_grid_U" name="auto" description="ocean U grid variables" >41 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 40 42 <field field_ref="suoce" name="uos" long_name="sea_surface_x_velocity" /> 41 43 </file> 42 44 43 <file id=" 1d_grid_V" name="auto" description="ocean V grid variables" >45 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 44 46 <field field_ref="svoce" name="vos" long_name="sea_surface_y_velocity" /> 45 47 </file> 46 48 47 49 </file_group> 50 48 51 <file_group id="3d" output_freq="3d" output_level="10" enabled=".TRUE."/> <!-- 3d files --> 49 52 50 53 <file_group id="5d" output_freq="5d" output_level="10" enabled=".TRUE."> <!-- 5d files --> 51 54 52 <file id=" 5d_grid_T" name="auto" description="ocean T grid variables" >55 <file id="file4" name_suffix="_grid_T" description="ocean T grid variables" > 53 56 <field field_ref="toce" name="thetao" long_name="sea_water_potential_temperature" /> 54 57 <field field_ref="soce" name="so" long_name="sea_water_salinity" /> … … 66 69 </file> 67 70 68 <file id=" 5d_grid_U" name="auto" description="ocean U grid variables" >71 <file id="file5" name_suffix="_grid_U" description="ocean U grid variables" > 69 72 <field field_ref="uoce" name="uo" long_name="sea_water_x_velocity" /> 70 73 <field field_ref="suoce" name="uos" long_name="sea_surface_x_velocity" /> … … 72 75 </file> 73 76 74 <file id=" 5d_grid_V" name="auto" description="ocean V grid variables" >77 <file id="file6" name_suffix="_grid_V" description="ocean V grid variables" > 75 78 <field field_ref="voce" name="vo" long_name="sea_water_y_velocity" /> 76 79 <field field_ref="svoce" name="vos" long_name="sea_surface_y_velocity" /> … … 78 81 </file> 79 82 80 <file id=" 5d_grid_W" name="auto" description="ocean W grid variables" >83 <file id="file7" name_suffix="_grid_W" description="ocean W grid variables" > 81 84 <field field_ref="woce" name="wo" long_name="ocean vertical velocity" /> 82 85 <field field_ref="avt" name="difvho" long_name="ocean_vertical_heat_diffusivity" /> 83 86 </file> 84 87 85 <file id=" 5d_icemod" name="auto" description="ice variables" >88 <file id="file8" name_suffix="_icemod" description="ice variables" > 86 89 <field field_ref="ice_pres" /> 87 90 <field field_ref="snowthic_cea" name="snd" long_name="surface_snow_thickness" /> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_demo.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1d" min_digits="4"> 24 24 25 25 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."> <!-- 1h files --> 26 <file id=" 1h_grid_T" name="auto" description="ocean T grid variables" >26 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 27 27 <field field_ref="sst" /> 28 28 <field field_ref="qsr" /> … … 32 32 33 33 <file_group id="1d" output_freq="1d" output_level="10" enabled=".TRUE."> <!-- 1d files --> 34 35 <file_group id="1d_grid_T" name="auto" description="ocean T grid variables" > 36 37 <!-- example of "hand made" zoom --> 38 <file id="blabla_1" name_suffix="_myzoom" > 39 <!-- group of variables sharing the same zoom. see zoom definition in domain_def.xml --> 40 <field_group id="blabla" domain_ref="myzoom" > 41 <field field_ref="toce" /> 42 <field field_ref="soce" /> 43 </field_group> 44 </file> 45 46 <!-- mooring: automatic definition of the file name suffix based on id="0n180wT" --> 47 <!-- include a group of variables. see field_def.xml for mooring variables definition --> 48 <file id="0n180wT" name_suffix="auto" > 49 <field_group group_ref="mooring"/> 50 </file> 51 52 <!-- Equatorial section: automatic definition of the file name suffix based on id="EqT" --> 53 <!-- Zoom over vertical axis. def of axis_ref in the axis_definition bellow --> 54 <file id="EqT" name_suffix="auto" > 55 <field_group id="EqT" domain_ref="EqT" > 56 <field field_ref="toce" name="votemper" axis_ref="deptht_zoom" /> 57 </field_group> 58 </file> 59 60 <!-- global file with different operations on data --> 61 <file id="blabla_2" > 62 <field field_ref="toce" default_value="-10" /> <!-- redefine the missing value --> 63 <field field_ref="sst" name="sstmooring1" domain_ref="0n180wT" /> <!-- include a mooring --> 64 <field field_ref="sst" name="sst_1d_ave" /> <!-- mean --> 65 <field field_ref="sst" name="sst_1d_inst" operation="instant" /> <!-- instant value --> 66 <field field_ref="sst" name="sst_1d_max" operation="maximum" /> <!-- max --> 67 <field field_ref="suoce" /> <!-- include a U-grid variable in the list --> 68 </file> 69 70 </file_group> 34 35 <!-- example of "hand made" zoom --> 36 <file id="file2" name_suffix="_grid_T_myzoom" > 37 <!-- group of variables sharing the same zoom. see zoom definition in domain_def.xml --> 38 <field_group id="blabla" domain_ref="myzoom" > 39 <field field_ref="toce" /> 40 <field field_ref="soce" /> 41 </field_group> 42 </file> 43 44 <!-- mooring: automatic definition of the file name suffix based on id="0n180wT" --> 45 <!-- include a group of variables. see field_def.xml for mooring variables definition --> 46 <file id="0n180wT" > 47 <field_group group_ref="mooring"/> 48 </file> 49 50 <!-- Equatorial section: automatic definition of the file name suffix based on id="EqT" --> 51 <!-- Zoom over vertical axis. def of axis_ref in the axis_definition bellow --> 52 <file id="EqT" > 53 <field_group id="EqT" domain_ref="EqT" > 54 <field field_ref="toce" name="votemper" axis_ref="deptht_myzoom" /> 55 </field_group> 56 </file> 57 58 <!-- global file with different operations on data --> 59 <file id="file3" > 60 <field field_ref="toce" default_value="-10" /> <!-- redefine the missing value --> 61 <field field_ref="sst" name="sstmooring1" domain_ref="0n180wT" /> <!-- include a mooring --> 62 <field field_ref="sst" name="sst_1d_ave" /> <!-- mean --> 63 <field field_ref="sst" name="sst_1d_inst" operation="instant" /> <!-- instant value --> 64 <field field_ref="sst" name="sst_1d_max" operation="maximum" /> <!-- max --> 65 <field field_ref="suoce" /> <!-- include a U-grid variable in the list --> 66 </file> 67 71 68 </file_group> 72 73 </file_definition>69 70 </file_definition> 74 71 75 72 <!-- … … 82 79 <axis_group id="deptht" long_name="Vertical T levels" unit="m" positive="down" > 83 80 <axis id="deptht" /> 84 <axis id="deptht_ zoom" zoom_begin="1" zoom_end="10" />81 <axis id="deptht_myzoom" zoom_begin="1" zoom_end="10" /> 85 82 </axis_group> 86 83 <axis id="depthu" long_name="Vertical U levels" unit="m" positive="down" /> -
trunk/NEMOGCM/CONFIG/ORCA2_LIM/EXP00/iodef_oldstyle.xml
r3771 r3940 21 21 --> 22 22 23 <file_definition type="multiple_file" sync_freq="1d" min_digits="4">23 <file_definition type="multiple_file" name="@expname@_@freq@_@startdate@_@enddate@" sync_freq="1mo" min_digits="4"> 24 24 25 <file_group id="1ts" output_freq="1ts" output_level="10" enabled=".TRUE."/> <!-- 1 time step files --> 26 25 27 <file_group id="1h" output_freq="1h" output_level="10" enabled=".TRUE."/> <!-- 1h files --> 26 28 <file_group id="2h" output_freq="2h" output_level="10" enabled=".TRUE."/> <!-- 2h files --> … … 33 35 <file_group id="5d" output_freq="5d" output_level="10" enabled=".TRUE."> <!-- 5d files --> 34 36 35 <file id=" 5d_grid_T" name="auto" description="ocean T grid variables" >37 <file id="file1" name_suffix="_grid_T" description="ocean T grid variables" > 36 38 <field field_ref="toce" name="votemper" /> 37 39 <field field_ref="soce" name="vosaline" /> … … 52 54 </file> 53 55 54 <file id=" 5d_grid_U" name="auto" description="ocean U grid variables" >56 <file id="file2" name_suffix="_grid_U" description="ocean U grid variables" > 55 57 <field field_ref="uoce" name="vozocrtx" /> 56 58 <field field_ref="uoce_eiv" name="vozoeivu" /> … … 58 60 </file> 59 61 60 <file id=" 5d_grid_V" name="auto" description="ocean V grid variables" >62 <file id="file3" name_suffix="_grid_V" description="ocean V grid variables" > 61 63 <field field_ref="voce" name="vomecrty" /> 62 64 <field field_ref="voce_eiv" name="vomeeivv" /> … … 64 66 </file> 65 67 66 <file id=" 5d_grid_W" name="auto" description="ocean Wgrid variables" >68 <file id="file4" name_suffix="_grid_W" description="ocean V grid variables" > 67 69 <field field_ref="woce" name="vovecrtz" /> 68 70 <field field_ref="avt" name="votkeavt" /> … … 71 73 </file> 72 74 73 <file id=" 5d_icemod" name="auto" description="icevariables" >75 <file id="file5" name_suffix="_icemod" description="ocean V grid variables" > 74 76 <field field_ref="ice_pres" /> 75 77 <field field_ref="snowthic_cea" name="isnowthi" /> -
trunk/NEMOGCM/NEMO/OPA_SRC/IOM/iom.F90
r3907 r3940 36 36 USE xios 37 37 # endif 38 USE ioipsl, ONLY : ju2ymds ! for calendar 38 39 39 40 IMPLICIT NONE … … 52 53 PRIVATE iom_p1d, iom_p2d, iom_p3d 53 54 #if defined key_iomput 54 PRIVATE iom_set_domain_attr, iom_set_axis_attr, iom_set_field_attr, iom_set_file_attr, iom_ set_grid_attr55 PRIVATE set_grid, set_scalar, set_xmlatt, set_mooring 55 PRIVATE iom_set_domain_attr, iom_set_axis_attr, iom_set_field_attr, iom_set_file_attr, iom_get_file_attr, iom_set_grid_attr 56 PRIVATE set_grid, set_scalar, set_xmlatt, set_mooring, iom_update_file_name, iom_sdate 56 57 # endif 57 58 … … 130 131 131 132 ! end file definition 132 dtime%second=rdt133 134 135 136 133 dtime%second = rdt 134 CALL xios_set_timestep(dtime) 135 CALL xios_close_context_definition() 136 137 CALL xios_update_calendar(0) 137 138 #endif 138 139 139 140 END SUBROUTINE iom_init 140 141 … … 174 175 LOGICAL , INTENT(in ), OPTIONAL :: ldiof ! Interp On the Fly, needed for AGRIF (default = .FALSE.) 175 176 176 CHARACTER(LEN= 100) :: clname ! the name of the file based on cdname [[+clcpu]+clcpu]177 CHARACTER(LEN= 100) :: cltmpn ! tempory name to store clname (in writting mode)177 CHARACTER(LEN=256) :: clname ! the name of the file based on cdname [[+clcpu]+clcpu] 178 CHARACTER(LEN=256) :: cltmpn ! tempory name to store clname (in writting mode) 178 179 CHARACTER(LEN=10) :: clsuffix ! ".nc" or ".dimg" 179 180 CHARACTER(LEN=15) :: clcpu ! the cpu number (max jpmax_digits digits) 180 CHARACTER(LEN= 100) :: clinfo ! info character181 CHARACTER(LEN=256) :: clinfo ! info character 181 182 LOGICAL :: llok ! check the existence 182 183 LOGICAL :: llwrt ! local definition of ldwrt … … 561 562 REAL(wp) :: zscf, zofs ! sacle_factor and add_offset 562 563 INTEGER :: itmp ! temporary integer 563 CHARACTER(LEN= 100) :: clinfo ! info character564 CHARACTER(LEN= 100) :: clname ! file name564 CHARACTER(LEN=256) :: clinfo ! info character 565 CHARACTER(LEN=256) :: clname ! file name 565 566 CHARACTER(LEN=1) :: clrankpv, cldmspc ! 566 567 !--------------------------------------------------------------------- … … 1010 1011 !!---------------------------------------------------------------------- 1011 1012 1012 1013 1013 #if defined key_iomput 1014 1014 1015 SUBROUTINE iom_set_domain_attr( cd name, ni_glo, nj_glo, ibegin, jbegin, ni, nj, zoom_ibegin, zoom_jbegin, zoom_ni, zoom_nj, &1015 SUBROUTINE iom_set_domain_attr( cdid, ni_glo, nj_glo, ibegin, jbegin, ni, nj, zoom_ibegin, zoom_jbegin, zoom_ni, zoom_nj, & 1016 1016 & data_dim, data_ibegin, data_ni, data_jbegin, data_nj, lonvalue, latvalue, mask ) 1017 CHARACTER(LEN=*) , INTENT(in) :: cd name1017 CHARACTER(LEN=*) , INTENT(in) :: cdid 1018 1018 INTEGER , OPTIONAL, INTENT(in) :: ni_glo, nj_glo, ibegin, jbegin, ni, nj 1019 1019 INTEGER , OPTIONAL, INTENT(in) :: data_dim, data_ibegin, data_ni, data_jbegin, data_nj … … 1022 1022 LOGICAL, DIMENSION(:,:), OPTIONAL, INTENT(in) :: mask 1023 1023 1024 IF ( xios_is_valid_domain (cd name) ) THEN1025 CALL xios_set_domain_attr ( cd name, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, &1026 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj 1027 & zoom_ibegin=zoom_ibegin, zoom_jbegin=zoom_jbegin, zoom_ni=zoom_ni, zoom_nj=zoom_nj, 1024 IF ( xios_is_valid_domain (cdid) ) THEN 1025 CALL xios_set_domain_attr ( cdid, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, & 1026 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj , & 1027 & zoom_ibegin=zoom_ibegin, zoom_jbegin=zoom_jbegin, zoom_ni=zoom_ni, zoom_nj=zoom_nj, & 1028 1028 & lonvalue=lonvalue, latvalue=latvalue,mask=mask ) 1029 1029 ENDIF 1030 1030 1031 IF ( xios_is_valid_domaingroup(cd name) ) THEN1032 CALL xios_set_domaingroup_attr( cd name, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, &1033 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj 1034 & zoom_ibegin=zoom_ibegin, zoom_jbegin=zoom_jbegin, zoom_ni=zoom_ni, zoom_nj=zoom_nj, 1031 IF ( xios_is_valid_domaingroup(cdid) ) THEN 1032 CALL xios_set_domaingroup_attr( cdid, ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, jbegin=jbegin, ni=ni, nj=nj, & 1033 & data_dim=data_dim, data_ibegin=data_ibegin, data_ni=data_ni, data_jbegin=data_jbegin, data_nj=data_nj , & 1034 & zoom_ibegin=zoom_ibegin, zoom_jbegin=zoom_jbegin, zoom_ni=zoom_ni, zoom_nj=zoom_nj, & 1035 1035 & lonvalue=lonvalue, latvalue=latvalue,mask=mask ) 1036 1036 ENDIF 1037 CALL xios_solve_inheritance() 1037 1038 1038 1039 END SUBROUTINE iom_set_domain_attr 1039 1040 1040 1041 1041 SUBROUTINE iom_set_axis_attr( cd name, paxis )1042 CHARACTER(LEN=*) , INTENT(in) :: cd name1042 SUBROUTINE iom_set_axis_attr( cdid, paxis ) 1043 CHARACTER(LEN=*) , INTENT(in) :: cdid 1043 1044 REAL(wp), DIMENSION(:), INTENT(in) :: paxis 1044 IF ( xios_is_valid_axis (cdname) ) CALL xios_set_axis_attr ( cdname, size=size(paxis),value=paxis ) 1045 IF ( xios_is_valid_axisgroup(cdname) ) CALL xios_set_axisgroup_attr( cdname, size=size(paxis),value=paxis ) 1045 IF ( xios_is_valid_axis (cdid) ) CALL xios_set_axis_attr ( cdid, size=size(paxis),value=paxis ) 1046 IF ( xios_is_valid_axisgroup(cdid) ) CALL xios_set_axisgroup_attr( cdid, size=size(paxis),value=paxis ) 1047 CALL xios_solve_inheritance() 1046 1048 END SUBROUTINE iom_set_axis_attr 1047 1049 1048 1050 1049 SUBROUTINE iom_set_field_attr( cd name, freq_op)1050 CHARACTER(LEN=*) , INTENT(in) :: cd name1051 SUBROUTINE iom_set_field_attr( cdid, freq_op, freq_offset ) 1052 CHARACTER(LEN=*) , INTENT(in) :: cdid 1051 1053 CHARACTER(LEN=*),OPTIONAL , INTENT(in) :: freq_op 1052 IF ( xios_is_valid_field (cdname) ) CALL xios_set_field_attr ( cdname, freq_op=freq_op ) 1053 IF ( xios_is_valid_fieldgroup(cdname) ) CALL xios_set_fieldgroup_attr( cdname, freq_op=freq_op ) 1054 CHARACTER(LEN=*),OPTIONAL , INTENT(in) :: freq_offset 1055 IF ( xios_is_valid_field (cdid) ) CALL xios_set_field_attr ( cdid, freq_op=freq_op, freq_offset=freq_offset ) 1056 IF ( xios_is_valid_fieldgroup(cdid) ) CALL xios_set_fieldgroup_attr( cdid, freq_op=freq_op, freq_offset=freq_offset ) 1057 CALL xios_solve_inheritance() 1054 1058 END SUBROUTINE iom_set_field_attr 1055 1059 1056 1060 1057 SUBROUTINE iom_set_file_attr( cd name, name, name_suffix )1058 CHARACTER(LEN=*) , INTENT(in) :: cd name1061 SUBROUTINE iom_set_file_attr( cdid, name, name_suffix ) 1062 CHARACTER(LEN=*) , INTENT(in) :: cdid 1059 1063 CHARACTER(LEN=*),OPTIONAL , INTENT(in) :: name, name_suffix 1060 IF ( xios_is_valid_file (cdname) ) CALL xios_set_file_attr ( cdname, name=name, name_suffix=name_suffix ) 1061 IF ( xios_is_valid_filegroup(cdname) ) CALL xios_set_filegroup_attr( cdname, name=name, name_suffix=name_suffix ) 1064 IF ( xios_is_valid_file (cdid) ) CALL xios_set_file_attr ( cdid, name=name, name_suffix=name_suffix ) 1065 IF ( xios_is_valid_filegroup(cdid) ) CALL xios_set_filegroup_attr( cdid, name=name, name_suffix=name_suffix ) 1066 CALL xios_solve_inheritance() 1062 1067 END SUBROUTINE iom_set_file_attr 1063 1068 1064 1069 1065 SUBROUTINE iom_set_grid_attr( cdname, mask ) 1066 CHARACTER(LEN=*) , INTENT(in) :: cdname 1070 SUBROUTINE iom_get_file_attr( cdid, name, name_suffix, output_freq ) 1071 CHARACTER(LEN=*) , INTENT(in ) :: cdid 1072 CHARACTER(LEN=*),OPTIONAL , INTENT(out) :: name, name_suffix, output_freq 1073 LOGICAL :: llexist1,llexist2,llexist3 1074 !--------------------------------------------------------------------- 1075 IF( PRESENT( name ) ) name = '' ! default values 1076 IF( PRESENT( name_suffix ) ) name_suffix = '' 1077 IF( PRESENT( output_freq ) ) output_freq = '' 1078 IF ( xios_is_valid_file (cdid) ) THEN 1079 CALL xios_solve_inheritance() 1080 CALL xios_is_defined_file_attr ( cdid, name = llexist1, name_suffix = llexist2, output_freq = llexist3) 1081 IF(llexist1) CALL xios_get_file_attr ( cdid, name = name ) 1082 IF(llexist2) CALL xios_get_file_attr ( cdid, name_suffix = name_suffix ) 1083 IF(llexist3) CALL xios_get_file_attr ( cdid, output_freq = output_freq ) 1084 ENDIF 1085 IF ( xios_is_valid_filegroup(cdid) ) THEN 1086 CALL xios_solve_inheritance() 1087 CALL xios_is_defined_filegroup_attr( cdid, name = llexist1, name_suffix = llexist2, output_freq = llexist3) 1088 IF(llexist1) CALL xios_get_filegroup_attr( cdid, name = name ) 1089 IF(llexist2) CALL xios_get_filegroup_attr( cdid, name_suffix = name_suffix ) 1090 IF(llexist3) CALL xios_get_filegroup_attr( cdid, output_freq = output_freq ) 1091 ENDIF 1092 END SUBROUTINE iom_get_file_attr 1093 1094 1095 SUBROUTINE iom_set_grid_attr( cdid, mask ) 1096 CHARACTER(LEN=*) , INTENT(in) :: cdid 1067 1097 LOGICAL, DIMENSION(:,:,:), OPTIONAL, INTENT(in) :: mask 1068 IF ( xios_is_valid_grid (cdname) ) CALL xios_set_grid_attr ( cdname, mask=mask ) 1069 IF ( xios_is_valid_gridgroup(cdname) ) CALL xios_set_gridgroup_attr( cdname, mask=mask ) 1098 IF ( xios_is_valid_grid (cdid) ) CALL xios_set_grid_attr ( cdid, mask=mask ) 1099 IF ( xios_is_valid_gridgroup(cdid) ) CALL xios_set_gridgroup_attr( cdid, mask=mask ) 1100 CALL xios_solve_inheritance() 1070 1101 END SUBROUTINE iom_set_grid_attr 1071 1102 … … 1073 1104 SUBROUTINE set_grid( cdgrd, plon, plat ) 1074 1105 !!---------------------------------------------------------------------- 1075 !! *** ROUTINE ***1106 !! *** ROUTINE set_grid *** 1076 1107 !! 1077 1108 !! ** Purpose : define horizontal grids … … 1110 1141 SUBROUTINE set_scalar 1111 1142 !!---------------------------------------------------------------------- 1112 !! *** ROUTINE ***1143 !! *** ROUTINE set_scalar *** 1113 1144 !! 1114 1145 !! ** Purpose : define fake grids for scalar point … … 1126 1157 SUBROUTINE set_xmlatt 1127 1158 !!---------------------------------------------------------------------- 1128 !! *** ROUTINE ***1159 !! *** ROUTINE set_xmlatt *** 1129 1160 !! 1130 1161 !! ** Purpose : automatic definitions of some of the xml attributs... 1131 1162 !! 1132 1163 !!---------------------------------------------------------------------- 1133 CHARACTER(len=6),DIMENSION( 8) :: clsuff ! suffix name1134 1164 CHARACTER(len=1),DIMENSION( 3) :: clgrd ! suffix name 1135 CHARACTER(len= 50) :: clname ! filename1165 CHARACTER(len=256) :: clsuff ! suffix name 1136 1166 CHARACTER(len=1) :: cl1 ! 1 character 1137 1167 CHARACTER(len=2) :: cl2 ! 1 character 1138 CHARACTER(len=255) :: tfo 1139 INTEGER :: idt ! time-step in seconds 1140 INTEGER :: iddss, ihhss ! number of seconds in 1 day, 1 hour and 1 year 1141 INTEGER :: iyymo ! number of months in 1 year 1142 INTEGER :: jg, jh, jd, jm, jy ! loop counters 1168 INTEGER :: ji, jg ! loop counters 1143 1169 INTEGER :: ix, iy ! i-,j- index 1144 1170 REAL(wp) ,DIMENSION(11) :: zlontao ! longitudes of tao moorings … … 1150 1176 !!---------------------------------------------------------------------- 1151 1177 ! 1152 idt = NINT( rdttra(1) )1153 iddss = NINT( rday ) ! number of seconds in 1 day1154 ihhss = NINT( rmmss * rhhmm ) ! number of seconds in 1 hour1155 iyymo = NINT( raamo ) ! number of months in 1 year1156 1157 1178 ! frequency of the call of iom_put (attribut: freq_op) 1158 tfo = TRIM(i2str(idt))//'s' 1159 CALL iom_set_field_attr('field_definition', freq_op=tfo) 1160 CALL iom_set_field_attr('SBC' , freq_op=TRIM(i2str(idt* nn_fsbc ))//'s') 1161 CALL iom_set_field_attr('ptrc_T', freq_op=TRIM(i2str(idt* nn_dttrc))//'s') 1162 CALL iom_set_field_attr('diad_T', freq_op=TRIM(i2str(idt* nn_dttrc))//'s') 1179 WRITE(cl1,'(i1)') 1 ; CALL iom_set_field_attr('field_definition', freq_op = cl1//'ts', freq_offset='0ts') 1180 WRITE(cl1,'(i1)') nn_fsbc ; CALL iom_set_field_attr('SBC' , freq_op = cl1//'ts', freq_offset='0ts') 1181 WRITE(cl1,'(i1)') nn_dttrc ; CALL iom_set_field_attr('ptrc_T' , freq_op = cl1//'ts', freq_offset='0ts') 1182 WRITE(cl1,'(i1)') nn_dttrc ; CALL iom_set_field_attr('diad_T' , freq_op = cl1//'ts', freq_offset='0ts') 1163 1183 1164 1184 ! output file names (attribut: name) 1165 clsuff(:) = (/ 'grid_T', 'grid_U', 'grid_V', 'grid_W', 'icemod', 'ptrc_T', 'diad_T', 'scalar' /) 1166 DO jg = 1, SIZE(clsuff) ! grid type 1167 DO jh = 1, 24 ! 1-24 hours 1168 WRITE(cl2,'(i2)') jh 1169 CALL dia_nam( clname, jh * ihhss, clsuff(jg), ldfsec = .TRUE. ) 1170 CALL iom_set_file_attr(TRIM(ADJUSTL(cl2))//'h_'//clsuff(jg), name=TRIM(clname)) 1171 END DO 1172 DO jd = 1, 30 ! 1-30 days 1173 WRITE(cl1,'(i1)') jd 1174 CALL dia_nam( clname, jd * iddss, clsuff(jg), ldfsec = .TRUE. ) 1175 CALL iom_set_file_attr(cl1//'d_'//clsuff(jg), name=TRIM(clname)) 1176 END DO 1177 DO jm = 1, 11 ! 1-11 months 1178 WRITE(cl1,'(i1)') jm 1179 CALL dia_nam( clname, -jm, clsuff(jg) ) 1180 CALL iom_set_file_attr(cl1//'m_'//clsuff(jg), name=TRIM(clname)) 1181 END DO 1182 DO jy = 1, 50 ! 1-50 years 1183 WRITE(cl2,'(i2)') jy 1184 CALL dia_nam( clname, -jy * iyymo, clsuff(jg) ) 1185 CALL iom_set_file_attr(TRIM(ADJUSTL(cl2))//'y_'//clsuff(jg), name=TRIM(clname)) 1186 END DO 1185 DO ji = 1, 9 1186 WRITE(cl1,'(i1)') ji 1187 CALL iom_update_file_name('file'//cl1) 1188 END DO 1189 DO ji = 1, 99 1190 WRITE(cl2,'(i2.2)') ji 1191 CALL iom_update_file_name('file'//cl2) 1187 1192 END DO 1188 1193 … … 1193 1198 ! Equatorial section (attributs: jbegin, ni, name_suffix) 1194 1199 CALL dom_ngb( 0., 0., ix, iy, cl1 ) 1195 CALL iom_set_domain_attr('Eq'//cl1, zoom_jbegin=iy, zoom_ni=jpiglo) 1196 CALL iom_set_file_attr('Eq'//cl1, name_suffix= '_Eq') 1200 CALL iom_set_domain_attr ('Eq'//cl1, zoom_jbegin=iy, zoom_ni=jpiglo) 1201 CALL iom_get_file_attr ('Eq'//cl1, name_suffix = clsuff ) 1202 CALL iom_set_file_attr ('Eq'//cl1, name_suffix = TRIM(clsuff)//'_Eq') 1203 CALL iom_update_file_name('Eq'//cl1) 1197 1204 END DO 1198 1205 ! TAO moorings (attributs: ibegin, jbegin, name_suffix) … … 1214 1221 SUBROUTINE set_mooring( plon, plat) 1215 1222 !!---------------------------------------------------------------------- 1216 !! *** ROUTINE ***1223 !! *** ROUTINE set_mooring *** 1217 1224 !! 1218 1225 !! ** Purpose : automatic definitions of moorings xml attributs... … … 1223 1230 !!$ CHARACTER(len=1),DIMENSION(4) :: clgrd = (/ 'T', 'U', 'V', 'W' /) ! suffix name 1224 1231 CHARACTER(len=1),DIMENSION(1) :: clgrd = (/ 'T' /) ! suffix name 1225 CHARACTER(len=50) :: clname ! file name 1232 CHARACTER(len=256) :: clname ! file name 1233 CHARACTER(len=256) :: clsuff ! suffix name 1226 1234 CHARACTER(len=1) :: cl1 ! 1 character 1227 1235 CHARACTER(len=6) :: clon,clat ! name of longitude, latitude … … 1269 1277 ENDIF 1270 1278 clname = TRIM(ADJUSTL(clat))//TRIM(ADJUSTL(clon)) 1271 CALL iom_set_domain_attr(TRIM(clname)//cl1, zoom_ibegin= ix, zoom_jbegin= iy) 1272 CALL iom_set_file_attr(TRIM(clname)//cl1, name_suffix= '_'//TRIM(clname)) 1279 CALL iom_set_domain_attr (TRIM(clname)//cl1, zoom_ibegin= ix, zoom_jbegin= iy) 1280 CALL iom_get_file_attr (TRIM(clname)//cl1, name_suffix = clsuff ) 1281 CALL iom_set_file_attr (TRIM(clname)//cl1, name_suffix = TRIM(clsuff)//'_'//TRIM(clname)) 1282 CALL iom_update_file_name(TRIM(clname)//cl1) 1273 1283 END DO 1274 1284 END DO … … 1277 1287 END SUBROUTINE set_mooring 1278 1288 1289 1290 SUBROUTINE iom_update_file_name( cdid ) 1291 !!---------------------------------------------------------------------- 1292 !! *** ROUTINE iom_update_file_name *** 1293 !! 1294 !! ** Purpose : 1295 !! 1296 !!---------------------------------------------------------------------- 1297 CHARACTER(LEN=*) , INTENT(in) :: cdid 1298 ! 1299 CHARACTER(LEN=256) :: clname 1300 CHARACTER(LEN=20) :: clfreq 1301 CHARACTER(LEN=20) :: cldate 1302 INTEGER :: idx 1303 INTEGER :: jn 1304 INTEGER :: itrlen 1305 INTEGER :: iyear, imonth, iday, isec 1306 REAL(wp) :: zsec 1307 LOGICAL :: llexist 1308 !!---------------------------------------------------------------------- 1309 1310 DO jn = 1,2 1311 1312 IF( jn == 1 ) CALL iom_get_file_attr( cdid, name = clname, output_freq = clfreq ) 1313 IF( jn == 2 ) CALL iom_get_file_attr( cdid, name_suffix = clname ) 1314 1315 IF ( TRIM(clname) /= '' ) THEN 1316 1317 idx = INDEX(clname,'@expname@') + INDEX(clname,'@EXPNAME@') 1318 DO WHILE ( idx /= 0 ) 1319 clname = clname(1:idx-1)//TRIM(cexper)//clname(idx+9:LEN_TRIM(clname)) 1320 idx = INDEX(clname,'@expname@') + INDEX(clname,'@EXPNAME@') 1321 END DO 1322 1323 idx = INDEX(clname,'@freq@') + INDEX(clname,'@FREQ@') 1324 DO WHILE ( idx /= 0 ) 1325 IF ( TRIM(clfreq) /= '' ) THEN 1326 itrlen = LEN_TRIM(clfreq) 1327 IF ( clfreq(itrlen-1:itrlen) == 'mo' ) clfreq = clfreq(1:itrlen-1) 1328 clname = clname(1:idx-1)//TRIM(clfreq)//clname(idx+6:LEN_TRIM(clname)) 1329 ELSE 1330 CALL ctl_stop('error in the name of file id '//TRIM(cdid), & 1331 & ' attribute output_freq is undefined -> cannot replace @freq@ in '//TRIM(clname) ) 1332 ENDIF 1333 idx = INDEX(clname,'@freq@') + INDEX(clname,'@FREQ@') 1334 END DO 1335 1336 idx = INDEX(clname,'@startdate@') + INDEX(clname,'@STARTDATE@') 1337 DO WHILE ( idx /= 0 ) 1338 cldate = iom_sdate( fjulday - rdttra(1) / rday ) 1339 clname = clname(1:idx-1)//TRIM(cldate)//clname(idx+11:LEN_TRIM(clname)) 1340 idx = INDEX(clname,'@startdate@') + INDEX(clname,'@STARTDATE@') 1341 END DO 1342 1343 idx = INDEX(clname,'@startdatefull@') + INDEX(clname,'@STARTDATEFULL@') 1344 DO WHILE ( idx /= 0 ) 1345 cldate = iom_sdate( fjulday - rdttra(1) / rday, ldfull = .TRUE. ) 1346 clname = clname(1:idx-1)//TRIM(cldate)//clname(idx+15:LEN_TRIM(clname)) 1347 idx = INDEX(clname,'@startdatefull@') + INDEX(clname,'@STARTDATEFULL@') 1348 END DO 1349 1350 idx = INDEX(clname,'@enddate@') + INDEX(clname,'@ENDDATE@') 1351 DO WHILE ( idx /= 0 ) 1352 cldate = iom_sdate( fjulday + rdttra(1) / rday * REAL( nitend - nit000, wp ), ld24 = .TRUE. ) 1353 clname = clname(1:idx-1)//TRIM(cldate)//clname(idx+9:LEN_TRIM(clname)) 1354 idx = INDEX(clname,'@enddate@') + INDEX(clname,'@ENDDATE@') 1355 END DO 1356 1357 idx = INDEX(clname,'@enddatefull@') + INDEX(clname,'@ENDDATEFULL@') 1358 DO WHILE ( idx /= 0 ) 1359 cldate = iom_sdate( fjulday + rdttra(1) / rday * REAL( nitend - nit000, wp ), ld24 = .TRUE., ldfull = .TRUE. ) 1360 clname = clname(1:idx-1)//TRIM(cldate)//clname(idx+13:LEN_TRIM(clname)) 1361 idx = INDEX(clname,'@enddatefull@') + INDEX(clname,'@ENDDATEFULL@') 1362 END DO 1363 1364 IF( jn == 1 ) CALL iom_set_file_attr( cdid, name = clname ) 1365 IF( jn == 2 ) CALL iom_set_file_attr( cdid, name_suffix = clname ) 1366 1367 ENDIF 1368 1369 END DO 1370 1371 END SUBROUTINE iom_update_file_name 1372 1373 1374 FUNCTION iom_sdate( pjday, ld24, ldfull ) 1375 !!---------------------------------------------------------------------- 1376 !! *** ROUTINE iom_sdate *** 1377 !! 1378 !! ** Purpose : send back the date corresponding to the given julian day 1379 !! 1380 !!---------------------------------------------------------------------- 1381 REAL(wp), INTENT(in ) :: pjday ! julian day 1382 LOGICAL , INTENT(in ), OPTIONAL :: ld24 ! true to force 24:00 instead of 00:00 1383 LOGICAL , INTENT(in ), OPTIONAL :: ldfull ! true to get the compleate date: yyyymmdd_hh:mm:ss 1384 ! 1385 CHARACTER(LEN=20) :: iom_sdate 1386 CHARACTER(LEN=50) :: clfmt ! format used to write the date 1387 INTEGER :: iyear, imonth, iday, ihour, iminute, isec 1388 REAL(wp) :: zsec 1389 LOGICAL :: ll24, llfull 1390 ! 1391 IF( PRESENT(ld24) ) THEN ; ll24 = ld24 1392 ELSE ; ll24 = .FALSE. 1393 ENDIF 1394 1395 IF( PRESENT(ldfull) ) THEN ; llfull = ldfull 1396 ELSE ; llfull = .FALSE. 1397 ENDIF 1398 1399 CALL ju2ymds( pjday, iyear, imonth, iday, zsec ) 1400 isec = NINT(zsec) 1401 1402 IF ( ll24 .AND. isec == 0 ) THEN ! 00:00 of the next day -> move to 24:00 of the current day 1403 CALL ju2ymds( pjday - 1., iyear, imonth, iday, zsec ) 1404 isec = 86400 1405 ENDIF 1406 1407 IF( iyear < 10000 ) THEN ; clfmt = "i4.4,2i2.2" ! format used to write the date 1408 ELSE ; WRITE(clfmt, "('i',i1,',2i2.2')") INT(LOG10(REAL(iyear,wp))) + 1 1409 ENDIF 1410 1411 IF( llfull ) THEN 1412 clfmt = TRIM(clfmt)//",'_',i2.2,':',i2.2,':',i2.2" 1413 ihour = isec / 3600 1414 isec = MOD(isec, 3600) 1415 iminute = isec / 60 1416 isec = MOD(isec, 60) 1417 WRITE(iom_sdate, '('//TRIM(clfmt)//')') iyear, imonth, iday, ihour, iminute, isec ! date of the end of run 1418 ELSE 1419 WRITE(iom_sdate, '('//TRIM(clfmt)//')') iyear, imonth, iday ! date of the end of run 1420 ENDIF 1421 1422 END FUNCTION iom_sdate 1423 1279 1424 #else 1280 1425 … … 1285 1430 1286 1431 #endif 1287 1288 FUNCTION i2str(int)1289 IMPLICIT NONE1290 INTEGER, INTENT(IN) :: int1291 CHARACTER(LEN=255) :: i2str1292 1293 WRITE(i2str,*) int1294 1295 END FUNCTION i2str1296 1432 1297 1433 !!======================================================================
Note: See TracChangeset
for help on using the changeset viewer.