#LyX 2.1 created this file. For more info see http://www.lyx.org/ \lyxformat 474 \begin_document \begin_header \textclass book \use_default_options true \begin_modules logicalmkup \end_modules \maintain_unincluded_children false \language english \language_package default \inputencoding auto \fontencoding global \font_roman default \font_sans default \font_typewriter default \font_math auto \font_default_family default \use_non_tex_fonts false \font_sc false \font_osf false \font_sf_scale 100 \font_tt_scale 100 \graphics default \default_output_format default \output_sync 0 \bibtex_command default \index_command default \paperfontsize default \spacing single \use_hyperref false \papersize a4paper \use_geometry false \use_package amsmath 1 \use_package amssymb 1 \use_package cancel 1 \use_package esint 1 \use_package mathdots 1 \use_package mathtools 1 \use_package mhchem 1 \use_package stackrel 1 \use_package stmaryrd 1 \use_package undertilde 1 \cite_engine basic \cite_engine_type default \biblio_style plain \use_bibtopic false \use_indices false \paperorientation portrait \suppress_date false \justification true \use_refstyle 0 \index Index \shortcut idx \color #008000 \end_index \secnumdepth 3 \tocdepth 3 \paragraph_separation indent \paragraph_indentation default \quotes_language english \papercolumns 1 \papersides 1 \paperpagestyle default \tracking_changes false \output_changes false \html_math_output 0 \html_css_as_file 0 \html_be_strict false \end_header \begin_body \begin_layout Title XIOS Fortran Reference Guide \end_layout \begin_layout Author Yann Meurdesoif \end_layout \begin_layout Chapter Attribute reference \end_layout \begin_layout Section Context attribute reference \end_layout \begin_layout Section Calendar attribute reference \end_layout \begin_layout Subsection* type: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout enumeration { Gregorian, Julian, D360, AllLeap, NoLeap, user_defined } \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: type \end_layout \begin_layout Standard Define the calendar used for the current context. This attribute is mandatory and cannot be modified once it has been set. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined using the following subroutine: \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* start_date: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout date \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code TYPE(xios_date) :: start_date \end_layout \begin_layout Standard Define the start date of the simulation for the current context. This attribute is optional, the default value is \begin_inset Flex Emph status collapsed \begin_layout Plain Layout \series bold 0000-01-01 00:00:00 \end_layout \end_inset . The \begin_inset Flex Strong status collapsed \begin_layout Plain Layout type \end_layout \end_inset attribute must always be set at the same time or before this attribute is defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset A partial date is allowed in the configuration file as long as the omitted parts are at the end, in which case they are initialized as in the default value. Optionally an offset can be added to the date using the notation " \emph on + duration \emph default ". \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute can be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Standard or later using the following subroutine: \end_layout \begin_layout LyX-Code SUBROUTINE xios_set_start_date(start_date) \end_layout \begin_layout Subsection* time_origin: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout date \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code TYPE(xios_date) :: time_origin \end_layout \begin_layout Standard Define the time origin of the time axis. It will appear as metadata attached to the time axis in the output file. This attribute is optional, the default value is \begin_inset Flex Emph status collapsed \begin_layout Plain Layout \series bold 0000-01-01 00:00:00 \end_layout \end_inset . The \begin_inset Flex Strong status collapsed \begin_layout Plain Layout type \end_layout \end_inset attribute must always be set at the same time or before this attribute is defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset A partial date is allowed in the configuration file as long as the omitted parts are at the end, in which case they are initialized as in the default value. Optionally an offset can be added to the date using the notation " \emph on + duration \emph default ". \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute can be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Standard or later using the following subroutine: \end_layout \begin_layout LyX-Code SUBROUTINE xios_set_time_origin(time_origin) \end_layout \begin_layout Subsection* timestep: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout duration \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code TYPE(xios_duration) :: timestep \end_layout \begin_layout Standard Define the time step of the simulation for the current context. This attribute is mandatory. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute can be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Standard or using the following subroutine: \end_layout \begin_layout LyX-Code SUBROUTINE xios_set_timestep(timestep) \end_layout \begin_layout Subsection* day_length: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: day_length \end_layout \begin_layout Standard Define the duration of a day, in seconds, when using a custom calendar. This attribute is mandatory if the calendar \series bold type \series default is set to " \emph on user_defined \emph default ", otherwise it must not be defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* month_lengths: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 1D-array of integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: month_lengths(:) \end_layout \begin_layout Standard Define the duration of each month, in days, when using a custom calendar. The number of elements in the array defines the number of months in a year and the sum of all elements is the total number of days in a year. This attribute is mandatory if the calendar \series bold type \series default is set to \series bold \emph on user_defined \series default \emph default and the \series bold year_length \series default attribute is not used, otherwise it must not be defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* year_length: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: year_length \end_layout \begin_layout Standard Define the duration of a year, in seconds, when using a custom calendar. This attribute is mandatory if the calendar \series bold type \series default is set to \series bold \emph on user_defined \series default \emph default and the \series bold month_lengths \series default attribute is not used, otherwise it must not be defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset Note that the date format is modified when using this attribute: the month must be always be omitted and the day must also be omitted if \begin_inset Formula $year\_length\leq day\_length$ \end_inset . \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* leap_year_month: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: leap_year_month \end_layout \begin_layout Standard Define the month to which the extra day will be added in case of leap year, when using a custom calendar. This attribute is optional if the calendar \series bold type \series default is set to \series bold \emph on user_defined \series default \emph default and the \series bold month_lengths \series default attribute is used, otherwise it must not be defined. The default behaviour is not to have any leap year. If defined, this attribute must comply with the following constraint: \begin_inset Formula $1\leq leap\_year\_month\leq size(month\_lengths)$ \end_inset and the \series bold leap_year_drift \series default attribute must also be defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* leap_year_drift: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: leap_year_drift \end_layout \begin_layout Standard Define the yearly drift, expressed as a fraction of a day, between the calendar year and the astronomical year, when using a custom calendar. This attribute is optional if the calendar \series bold type \series default is set to \series bold \emph on user_defined \series default \emph default and the \series bold month_lengths \series default attribute is used, otherwise it must not be defined. The default behaviour is not to have any leap year, i.e. the default value is \begin_inset Formula $\mathbf{0}$ \end_inset . If defined, this attribute must comply with the following constraint: \begin_inset Formula $0\leq leap\_year\_drift<1$ \end_inset and the \series bold leap_year_month \series default attribute must also be defined. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Subsection* leap_year_drift_offset: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: leap_year_drift_offset \end_layout \begin_layout Standard Define the initial drift between the calendar year and the astronomical year, expressed as a fraction of a day, at the beginning of the time origin's year, when using a custom calendar. This attribute is optional if the \series bold leap_year_month \series default and \series bold leap_year_drift \series default attributes are used, otherwise it must not be defined. The default value is \begin_inset Formula $\mathbf{0}$ \end_inset . If defined, this attribute must comply with the following constraint: \begin_inset Formula $0\leq leap\_year\_drift\_offset<1$ \end_inset . If \begin_inset Formula $leap\_yeap\_drift\_offset+leap\_yeap\_drift$ \end_inset is greater or equal to 1, then the first year will be a leap year. \begin_inset Newline newline \end_inset \begin_inset Newline newline \end_inset When using the Fortran interface, this attribute must be defined at the same time as the calendar \series bold type \series default : \end_layout \begin_layout LyX-Code SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, \begin_inset Newline newline \end_inset day_length, month_lengths, year_length, \begin_inset Newline newline \end_inset leap_year_month, leap_year_drift, \begin_inset Newline newline \end_inset leap_year_drift_offset) \end_layout \begin_layout Section Axis attribute reference \end_layout \begin_layout Subsection* name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: name \end_layout \begin_layout Standard Define the name of the vertical axis, as it will appear in a file. If not defined, a name is self generated from the id. If multiple vertical axis are defined in a same file, each name must be different. \end_layout \begin_layout Subsection* standard_name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: standard_name \end_layout \begin_layout Standard Define the standard name of the vertical axis, as it will appear in the metadata attached to the axis of the output file. \end_layout \begin_layout Subsection* long_name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: long_name \end_layout \begin_layout Standard Define the long name of the vertical axis, as it will appear in the metadata attached to the axis of the output file. \end_layout \begin_layout Subsection* unit: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: unit \end_layout \begin_layout Standard Define the unit of the axis as it will appear in the metadata attached to the axis in the output file. \end_layout \begin_layout Subsection* n_glo: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: n_glo \end_layout \begin_layout Standard Define the global size of the axis. This attribute is mandatory. \end_layout \begin_layout Subsection* begin: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: begin \end_layout \begin_layout Standard Define the the beginning index of the local domain. This attribute is optional. This must be an index between 0 and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout n_glo-1 \end_layout \end_inset . If not specified the default value is 0. \end_layout \begin_layout Subsection* n: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: zoom_size \end_layout \begin_layout Standard Define the the local size of the axis. This attribute is optional. This must be an integer between 1 and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout n_glo \end_layout \end_inset . If not specified the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout n_glo \end_layout \end_inset . \end_layout \begin_layout Subsection* value: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 1D-array of double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: value(:) \end_layout \begin_layout Standard Define the value of each level of a vertical axis. The size of the array must be equal to the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout size \end_layout \end_inset attribute. If not defined the default values are filled with values from 1 to \begin_inset Flex Strong status collapsed \begin_layout Plain Layout size \end_layout \end_inset . \end_layout \begin_layout Subsection* bounds: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 2D-array of double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: value(:,:) \end_layout \begin_layout Standard Define the boundaries of each level of a the vertical axis. The dimensions of the array must be \begin_inset Formula $2\times n$ \end_inset . \end_layout \begin_layout Subsection* data_begin: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_begin \end_layout \begin_layout Standard Define the beginning index of the field data for the axis. This attribute is an offset regarding the local axis, so the value can be negative. A negative value indicates that only some valid part of the data will extracted , for example in the case of a ghost cell. A positive value indicates that the local domain is greater than the data stored in memory. A 0-value means that the local domain matches the data in memory. This attribute is optional and the default value is 0. Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_begin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_n \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_n: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_n \end_layout \begin_layout Standard Define the size of the field data for the first axis. This attribute is optional and the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout n \end_layout \end_inset . Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_begin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_n \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_index: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_index \end_layout \begin_layout Standard In case of a compressed vertical axis, this attribute define the number of points stored in memory on the local axis. \end_layout \begin_layout Subsection* mask: \emph on 1D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask(:) \end_layout \begin_layout Standard Define the mask of the local axis. The masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. \end_layout \begin_layout Subsection* n_distributed_partition: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: n_distributed_partition \end_layout \begin_layout Standard Define the number of local axis in case axis is auto-generated. This attribute is optional and the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset . \end_layout \begin_layout Subsection* positive: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout enumeration { up, down } \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: positive \end_layout \begin_layout Standard Define the direction of vertical axis. \end_layout \begin_layout Subsection* axis_ref: string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: axis_ref \end_layout \begin_layout Standard Define the reference of the axis. All attributes are inherited from the referenced axis with the classical inheritance mechanism. The value assigned to the referenced axis is transmitted to to current axis. This attribute is optional. \end_layout \begin_layout Subsection* index: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 1D-array of double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: index(:) \end_layout \begin_layout Standard Define the global index of axis which the local axis holds. This attribute is optional and the size of the array is equal to \begin_inset Flex Strong status collapsed \begin_layout Plain Layout n \end_layout \end_inset . \end_layout \begin_layout Section Domain attribute reference \end_layout \begin_layout Subsection* name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: name \end_layout \begin_layout Standard Define the name of the horizontal domain. This attribute may be used in case of multiple domains defined in the same file. In this case, the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout name \end_layout \end_inset attribute will be suffixed to the longitude and latitude dimensions and axis name. Otherwise, a suffix will be self-generated. \end_layout \begin_layout Subsection* standard_name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: standard_name \end_layout \begin_layout Standard Define the standard name of the domain, as it will appear in the metadata attached to the domain of the output file. \end_layout \begin_layout Subsection* long_name: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout string \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: long_name \end_layout \begin_layout Standard Define the long name of the domain, as it will appear in the metadata attached to the domain of the output file. \end_layout \begin_layout Subsection* type: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout enumeration { rectilinear, curvilinear, unstructured } \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: type \end_layout \begin_layout Standard Define the type of the grid. This attribute is mandatory. \end_layout \begin_layout Subsection* ni_glo: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: ni_glo \end_layout \begin_layout Standard Define the first dimension of the global domain. This attribute is mandatory. \end_layout \begin_layout Subsection* nj_glo: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: nj_glo \end_layout \begin_layout Standard Define the second dimension of the global domain. This attribute is mandatory. \end_layout \begin_layout Subsection* ibegin: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: ibegin \end_layout \begin_layout Standard Define the begining index of the first dimension of the local domain. This attribute is optional. This must be an integer between \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0 \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni_glo-1 \end_layout \end_inset . If not specified the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0 \end_layout \end_inset . \end_layout \begin_layout Subsection* ni: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: ni \end_layout \begin_layout Standard Define the first dimension of the local domain. This attribute is optional. This must be an integer between \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni_glo \end_layout \end_inset . If not specified the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni_glo \end_layout \end_inset . \end_layout \begin_layout Subsection* jbegin: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: jbegin \end_layout \begin_layout Standard Define the beginning index of the second dimension of the local domain. This attribute is optional. This must be an integer between \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0 \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nj_glo-1 \end_layout \end_inset . If not specified the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0 \end_layout \end_inset . \end_layout \begin_layout Subsection* nj: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout integer \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: nj \end_layout \begin_layout Standard Define the second dimension of the local domain. This attribute is optional. This must be an integer between \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nj_glo \end_layout \end_inset . If not specified the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nj_glo \end_layout \end_inset . \end_layout \begin_layout Subsection* lonvalue_1d: \emph on 1D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: lonvalue(:) \end_layout \begin_layout Standard Define the value of the longitude on the local domain. For a cartesian grid, the size of the array will be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \end_layout \end_inset . For a curvilinear grid, the size of the array will be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \begin_inset Formula $\times$ \end_inset nj \end_layout \end_inset . This attribute is optional. \end_layout \begin_layout Subsection* lonvalue_2d: \emph on 2D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: lonvalue(:,:) \end_layout \begin_layout Standard Define the value of the longitude on the local domain. For a cartesian and curvilinear grid, the size of the array will be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \begin_inset Formula $\times$ \end_inset nj \end_layout \end_inset . This attribute is mandatory. Only lonvalue_1d or lonvalue_2d can be defined. \end_layout \begin_layout Subsection* latvalue_1d: \emph on 1D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: latvalue(:) \end_layout \begin_layout Standard Define the value of the latitude on the local domain. For a cartesian grid, the size of the array will be nj. For a curvilinear grid, the size of the array will be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \begin_inset Formula $\times$ \end_inset nj \end_layout \end_inset . This attribute is optional. \end_layout \begin_layout Subsection* latvalue_2d: \emph on 2D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: latvalue(:,:) \end_layout \begin_layout Standard Define the value of the latitude on the local domain. For a cartesian and a curvilinear grid, the size of the array will be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \begin_inset Formula $\times$ \end_inset nj \end_layout \end_inset . This attribute is mandatory. Only latvalue_1d or latvalue_2d can be defined. \end_layout \begin_layout Subsection* nvertex: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: nvertex \end_layout \begin_layout Standard Define the the maximum number of vertices for a cell. This is useful to specify the boundaries of cells for an unstructured mesh. This attribute is optional. \end_layout \begin_layout Subsection* bounds_lon_1d: \emph on 2D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: bounds_lon(:,:) \end_layout \begin_layout Standard Longitude value of the vertex of the cells. \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nvertex \end_layout \end_inset attribute must also be defined. This attribute is optional. \end_layout \begin_layout Subsection* bounds_lon_2d: \emph on 3D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: bounds_lon(:,:,:) \end_layout \begin_layout Standard Longitude value of the vertex of the cells. \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nvertex \end_layout \end_inset attribute must also be defined. This attribute is optional. This attribute is useful when lonvalue_2d is defined. Only bounds_lon_1d or bounds_lon_2d can be defined. \end_layout \begin_layout Subsection* bounds_lat_1d: \emph on 2D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: bounds_lat(:,:) \end_layout \begin_layout Standard Latitude value of the vertex of the cells. \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nvertex \end_layout \end_inset attribute must also be defined. This attribute is optional. \end_layout \begin_layout Subsection* bounds_lat_2d: \emph on 3D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: bounds_lat(:,:) \end_layout \begin_layout Standard Latitude value of the vertex of the cells. \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nvertex \end_layout \end_inset attribute must also be defined. This attribute is optional. This attribute is useful when latvalue_2d is defined. Only bounds_lat_1d or bounds_lat_2d can be defined. \end_layout \begin_layout Subsection* area: \emph on 2D-array of double \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: area(:,:) \end_layout \begin_layout Standard Area of the cells. The size of the array must be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \begin_inset Formula $\times$ \end_inset nj \end_layout \end_inset . This attribute is optional. \end_layout \begin_layout Subsection* data_dim: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: datadim \end_layout \begin_layout Standard Define how a field is stored on memory for the client code. \begin_inset Flex Strong status collapsed \begin_layout Plain Layout datadim \end_layout \end_inset value can be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset or \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 2 \end_layout \end_inset . A value of \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset indicates that the horizontal layer of the field is stored on a 1D array as a vector of points. A value of \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 2 \end_layout \end_inset indicates that the horizontal layer is stored in a 2D array. This attribute is optional. The default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1 \end_layout \end_inset . \end_layout \begin_layout Subsection* data_ibegin: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_ibegin \end_layout \begin_layout Standard Define the beginning index of the field data for the first dimension. This attribute is an offset regarding the local domain, so the value can be negative. A negative value indicates that only some valid part of the data will extracted , for example in the case of a ghost cell. A positive value indicates that the local domain is greater than the data stored in memory. A 0-value means that the local domain matches the data in memory. This attribute is optional and the default value is 0. Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_ibegin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_ni \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_ni: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_ni \end_layout \begin_layout Standard Define the size of the field data for the first dimension. This attribute is optional and the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni \end_layout \end_inset . Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_ibegin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_ni \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_jbegin: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_jbegin \end_layout \begin_layout Standard Define the beginning index of the field data for the second dimension. This attribute is take account only if \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_dim=2 \end_layout \end_inset . This attribute is an offset regarding the local domain, so the value can be negative. A negative value indicate that only some valid part of the data will extracted, for example in case of ghost cell. A positive value indicate that the local domain is greater than the data stored in memory. A 0-value means that the local domain match the data in memory. This attribute is optional and the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0 \end_layout \end_inset . Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_jbegin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_nj \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_nj: \emph on integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_nj \end_layout \begin_layout Standard Define the size of the field data for the second dimension. This attribute is taken account only if \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_dim=2 \end_layout \end_inset . This attribute is optional and the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout nj \end_layout \end_inset . Otherwise \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_jbegin \end_layout \end_inset and \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_nj \end_layout \end_inset must be defined together. \end_layout \begin_layout Subsection* data_i_index: \emph on 1D-array of integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_i_index(:) \end_layout \begin_layout Standard In case of a compressed horizontal domain, define the indexation the indexation of the data for the first dimension. The size of the array must be \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_nindex \end_layout \end_inset . This attribute is optional. \end_layout \begin_layout Subsection* data_j_index: \emph on 1D-array of integer \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code INTEGER :: data_j_index(:) \end_layout \begin_layout Standard In case of a compressed horizontal domain, define the indexation the indexation of the data for the second dimension. This is meaningful only if \begin_inset Flex Strong status collapsed \begin_layout Plain Layout data_dim=2 \end_layout \end_inset . This attribute is optional. \end_layout \begin_layout Subsection* mask_1d: \emph on 1D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask(:) \end_layout \begin_layout Standard Define the 1-dimension mask of the local domain. The attribute is optional. By default, none value is masked. The masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. This value is useful in case a field is stored linearly in memory. This attribute is optional. \end_layout \begin_layout Subsection* mask_2d: \emph on 2D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask(:,:) \end_layout \begin_layout Standard Define the mask of the local domain. The attribute is optional. By default, none value is masked. The masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. Only mask_2d or mask_1d can be defined. \end_layout \begin_layout Subsection* domain_ref: string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: domain_ref \end_layout \begin_layout Standard Define the reference of the domain. All attributes are inherited from the referenced domain with the classic inheritance mechanism. The value assigned to the referenced domain is transmitted to to current domain. This attribute is optional. \end_layout \begin_layout Subsection* i_index: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 1D-array of double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: i_index(:) \end_layout \begin_layout Standard Define the global index of the first dimension of domain which the local domain holds. This attribute is optional and by default, the size of the array is equal to \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni*nj \end_layout \end_inset . \end_layout \begin_layout Subsection* j_index: \begin_inset Flex Emph status collapsed \begin_layout Plain Layout 1D-array of double \end_layout \end_inset \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code DOUBLE PRECISION :: j_index(:) \end_layout \begin_layout Standard Define the global index of the second dimension of domain which the local domain holds. This attribute is optional and by default, the size of the array is equal to \begin_inset Flex Strong status collapsed \begin_layout Plain Layout ni*nj \end_layout \end_inset . \end_layout \begin_layout Section Grid attribute reference \end_layout \begin_layout Subsection* name: string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: name \end_layout \begin_layout Standard Define the name of the grid. This attribute is actually not used internally. Optional attribute. \end_layout \begin_layout Subsection* description: string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: description \end_layout \begin_layout Standard Define the description of the grid. This attribute is optional. \end_layout \begin_layout Subsection* mask_1d: \emph on 1D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask_1d(:) \end_layout \begin_layout Standard Define the mask of the local 1-dimension grid. Masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. This attribute is optional. By default, none value is masked. \end_layout \begin_layout Subsection* mask_2d: \emph on 2D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask_2d(:,:) \end_layout \begin_layout Standard Define the mask of the local 2-dimension grid. Masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. This attribute is optional. By default, none value is masked. \end_layout \begin_layout Subsection* mask_3d: \emph on 3D-array of bool \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code LOGICAL :: mask_3d(:,:,:) \end_layout \begin_layout Standard Define the mask of the local 3-dimension grid. Masked value will be replaced by the value of the field attribute \begin_inset Flex Strong status collapsed \begin_layout Plain Layout default_value \end_layout \end_inset in the output file. This attribute is optional. By default, none value is masked. Only one mask can be defined. \end_layout \begin_layout Section Field attribute reference \end_layout \begin_layout Subsection* name: \emph on string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: name \end_layout \begin_layout Standard Define the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout name \end_layout \end_inset of the field as it will appear in an output file. This attribute is optional. If not present, the identifier \begin_inset Flex Strong status collapsed \begin_layout Plain Layout id \end_layout \end_inset will be substituted. \end_layout \begin_layout Subsection* standard_name: \emph on string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: standard_name \end_layout \begin_layout Standard Define the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout standard_name \end_layout \end_inset attribute as it will appear in the metadata of an output file. This attribute is optional. \end_layout \begin_layout Subsection* long_name: \emph on string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: long_name \end_layout \begin_layout Standard Define the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout long_name \end_layout \end_inset attribute as it will appear in the metadata of an output file. This attribute is optional. \end_layout \begin_layout Subsection* unit: \emph on string \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: unit \end_layout \begin_layout Standard Define the \begin_inset Flex Strong status collapsed \begin_layout Plain Layout unit \end_layout \end_inset of the field. This attribute is optional. \end_layout \begin_layout Subsection* operation: enumeration \emph on { once, instant, average, maximum, minimum, accumulate } \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code CHARACTER(LEN=*) :: operation \end_layout \begin_layout Standard Define the temporal operation applied on the field. This attribute is optional, by default no operation is applied. \end_layout \begin_layout Subsection* freq_op: \emph on duration \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code TYPE(xios_duration) :: freq_op \end_layout \begin_layout Standard Define the frequency of the sampling for the temporal operation, so a field value will be used for temporal averaging every \begin_inset Flex Strong status collapsed \begin_layout Plain Layout freq_op \end_layout \end_inset time step. It is very useful for sub-processes called at different frequency in a model. This attribute is optional, the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 1ts \end_layout \end_inset (1 time step). \end_layout \begin_layout Subsection* freq_offset: \emph on duration \end_layout \begin_layout Standard Fortran: \end_layout \begin_layout LyX-Code TYPE(xios_duration) :: freq_offset \end_layout \begin_layout Standard Define the offset when \begin_inset Flex Strong status collapsed \begin_layout Plain Layout freq_op \end_layout \end_inset is defined. This attribute is optional, the default value is \begin_inset Flex Strong status collapsed \begin_layout Plain Layout 0ts \end_layout \end_inset (0 time step). \end_layout \begin_layout Standard \begin_inset Formula $0\leq freq\_offset xios_date \end_layout \end_inset \end_layout \begin_layout Itemize Greater or equal: \begin_inset Flex Code status collapsed \begin_layout Plain Layout LOGICAL = xios_date >= xios_date \end_layout \end_inset \end_layout \begin_layout Subsection* Converting a date to a number of seconds since the time origin \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION INTEGER(kind = 8) xios_date_convert_to_seconds(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the number of seconds since the time origin for the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \begin_layout Subsection* Converting a date to a number of seconds since the beginning of the year \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION INTEGER xios(date_get_second_of_year)(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the number of seconds since the beginning of the year for the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \begin_layout Subsection* Converting a date to a number of days since the beginning of the year \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION DOUBLE_PRECISION xios_date_get_day_of_year(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the number of days since the beginning of the year for the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \begin_layout Subsection* Converting a date to a fraction of the current year \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION DOUBLE_PRECISION xios_date_get_fraction_of_year(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the fraction of year corresponding to the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \begin_layout Subsection* Converting a date to a number of seconds since the beginning of the day \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION INTEGER xios(date_get_second_of_day)(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the number of seconds since the beginning of the day for the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \begin_layout Subsection* Converting a date to a fraction of the current day \end_layout \begin_layout Subsubsection* Synopsis: \end_layout \begin_layout LyX-Code FUNCTION DOUBLE_PRECISION xios_date_get_fraction_of_day(date) \begin_inset Newline newline \end_inset TYPE(xios_date), INTENT(IN) :: date \end_layout \begin_layout Subsubsection* Arguments: \end_layout \begin_layout Itemize \begin_inset Flex Code status collapsed \begin_layout Plain Layout date \end_layout \end_inset : the date to convert \end_layout \begin_layout Subsubsection* Description: \end_layout \begin_layout Standard This function returns the fraction of day corresponding to the specified date, based on the calendar of the current context. It must not be used before the calendar was created. \end_layout \end_body \end_document