- Timestamp:
- 02/18/15 08:24:47 (10 years ago)
- Location:
- XIOS/trunk/doc
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/doc/XIOS_reference_guide.lyx
r536 r559 89 89 \end_layout 90 90 91 \begin_layout Subsection* 92 calendar_type : 91 \begin_layout Section 92 Calendar attribute reference 93 \end_layout 94 95 \begin_layout Subsection* 96 type: 93 97 \begin_inset Flex Emph 94 98 status collapsed 95 99 96 100 \begin_layout Plain Layout 97 enum { Gregorian, Julian, D360, AllLeap, NoLeap} 98 \end_layout 99 100 \end_inset 101 102 103 \end_layout 104 105 \begin_layout Standard 106 Fortran : 107 \end_layout 108 109 \begin_layout LyX-Code 110 CHARACTER(LEN=*) :: calendar_type 111 \end_layout 112 113 \begin_layout Standard 114 Define the calendar used for the context. 115 This attribute is mandatory 116 \end_layout 117 118 \begin_layout Subsection* 119 start_date : 101 enumeration { Gregorian, Julian, D360, AllLeap, NoLeap, user_defined } 102 \end_layout 103 104 \end_inset 105 106 107 \end_layout 108 109 \begin_layout Standard 110 Fortran: 111 \end_layout 112 113 \begin_layout LyX-Code 114 CHARACTER(LEN=*) :: type 115 \end_layout 116 117 \begin_layout Standard 118 Define the calendar used for the current context. 119 This attribute is mandatory and cannot be modified once it has been set. 120 \begin_inset Newline newline 121 \end_inset 122 123 124 \begin_inset Newline newline 125 \end_inset 126 127 When using the Fortran interface, this attribute must be defined using the 128 following subroutine: 129 \end_layout 130 131 \begin_layout LyX-Code 132 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 133 \begin_inset Newline newline 134 \end_inset 135 136 day_length, month_lengths, year_length, 137 \begin_inset Newline newline 138 \end_inset 139 140 leap_year_month, leap_year_drift, 141 \begin_inset Newline newline 142 \end_inset 143 144 leap_year_drift_offset) 145 \end_layout 146 147 \begin_layout Subsection* 148 start_date: 120 149 \begin_inset Flex Emph 121 150 status collapsed … … 131 160 132 161 \begin_layout Standard 133 Fortran 134 \end_layout 135 136 \begin_layout LyX-Code 137 CHARACTER(LEN=*) :: start_date162 Fortran: 163 \end_layout 164 165 \begin_layout LyX-Code 166 TYPE(xios_date) :: start_date 138 167 \end_layout 139 168 140 169 \begin_layout Standard 141 170 Define the start date of the simulation for the current context. 142 This attribute is madatory 143 \end_layout 144 145 \begin_layout Subsection* 146 time_origin : 171 This attribute is optional, the default value is 147 172 \begin_inset Flex Emph 148 173 status collapsed 149 174 150 175 \begin_layout Plain Layout 176 177 \series bold 178 0000-01-01 00:00:00 179 \end_layout 180 181 \end_inset 182 183 . 184 The 185 \begin_inset Flex Strong 186 status collapsed 187 188 \begin_layout Plain Layout 189 type 190 \end_layout 191 192 \end_inset 193 194 attribute must always be set at the same time or before this attribute 195 is defined. 196 \begin_inset Newline newline 197 \end_inset 198 199 200 \begin_inset Newline newline 201 \end_inset 202 203 A partial date is allowed in the configuration file as long as the omitted 204 parts are at the end, in which case they are initialized as in the default 205 value. 206 Optionally an offset can be added to the date using the notation " 207 \emph on 208 + duration 209 \emph default 210 ". 211 212 \begin_inset Newline newline 213 \end_inset 214 215 216 \begin_inset Newline newline 217 \end_inset 218 219 When using the Fortran interface, this attribute can be defined at the same 220 time as the calendar 221 \series bold 222 type 223 \series default 224 : 225 \end_layout 226 227 \begin_layout LyX-Code 228 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 229 \begin_inset Newline newline 230 \end_inset 231 232 day_length, month_lengths, year_length, 233 \begin_inset Newline newline 234 \end_inset 235 236 leap_year_month, leap_year_drift, 237 \begin_inset Newline newline 238 \end_inset 239 240 leap_year_drift_offset) 241 \end_layout 242 243 \begin_layout Standard 244 or later using the following subroutine: 245 \end_layout 246 247 \begin_layout LyX-Code 248 SUBROUTINE xios_set_start_date(start_date) 249 \end_layout 250 251 \begin_layout Subsection* 252 time_origin: 253 \begin_inset Flex Emph 254 status collapsed 255 256 \begin_layout Plain Layout 151 257 date 152 258 \end_layout … … 158 264 159 265 \begin_layout Standard 160 Fortran 161 \end_layout 162 163 \begin_layout LyX-Code 164 CHARACTER(LEN=*) :: time_origin266 Fortran: 267 \end_layout 268 269 \begin_layout LyX-Code 270 TYPE(xios_date) :: time_origin 165 271 \end_layout 166 272 … … 168 274 Define the time origin of the time axis. 169 275 It will appear as metadata attached to the time axis in the output file. 170 The default value is the 171 \begin_inset Flex Strong 172 status collapsed 173 174 \begin_layout Plain Layout 175 start_date 176 \end_layout 177 178 \end_inset 179 180 attribute. 181 \end_layout 182 183 \begin_layout Subsection* 184 timestep : 276 This attribute is optional, the default value is 185 277 \begin_inset Flex Emph 186 278 status collapsed 187 279 188 280 \begin_layout Plain Layout 281 282 \series bold 283 0000-01-01 00:00:00 284 \end_layout 285 286 \end_inset 287 288 . 289 The 290 \begin_inset Flex Strong 291 status collapsed 292 293 \begin_layout Plain Layout 294 type 295 \end_layout 296 297 \end_inset 298 299 attribute must always be set at the same time or before this attribute 300 is defined. 301 \begin_inset Newline newline 302 \end_inset 303 304 305 \begin_inset Newline newline 306 \end_inset 307 308 A partial date is allowed in the configuration file as long as the omitted 309 parts are at the end, in which case they are initialized as in the default 310 value. 311 Optionally an offset can be added to the date using the notation " 312 \emph on 313 + duration 314 \emph default 315 ". 316 317 \begin_inset Newline newline 318 \end_inset 319 320 321 \begin_inset Newline newline 322 \end_inset 323 324 When using the Fortran interface, this attribute can be defined at the same 325 time as the calendar 326 \series bold 327 type 328 \series default 329 : 330 \end_layout 331 332 \begin_layout LyX-Code 333 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 334 \begin_inset Newline newline 335 \end_inset 336 337 day_length, month_lengths, year_length, 338 \begin_inset Newline newline 339 \end_inset 340 341 leap_year_month, leap_year_drift, 342 \begin_inset Newline newline 343 \end_inset 344 345 leap_year_drift_offset) 346 \end_layout 347 348 \begin_layout Standard 349 or later using the following subroutine: 350 \end_layout 351 352 \begin_layout LyX-Code 353 SUBROUTINE xios_set_time_origin(time_origin) 354 \end_layout 355 356 \begin_layout Subsection* 357 timestep: 358 \begin_inset Flex Emph 359 status collapsed 360 361 \begin_layout Plain Layout 189 362 duration 190 363 \end_layout … … 196 369 197 370 \begin_layout Standard 198 Fortran 199 \end_layout 200 201 \begin_layout LyX-Code 202 CHARACTER(LEN=*) :: timestep203 \end_layout 204 205 \begin_layout Standard 206 Define the time step of thecontext.371 Fortran: 372 \end_layout 373 374 \begin_layout LyX-Code 375 TYPE(xios_duration) :: timestep 376 \end_layout 377 378 \begin_layout Standard 379 Define the time step of the simulation for the current context. 207 380 This attribute is mandatory. 208 The time step can be also defined by calling the Fortran subroutine : 381 \begin_inset Newline newline 382 \end_inset 383 384 385 \begin_inset Newline newline 386 \end_inset 387 388 When using the Fortran interface, this attribute can be defined at the same 389 time as the calendar 390 \series bold 391 type 392 \series default 393 : 394 \end_layout 395 396 \begin_layout LyX-Code 397 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 398 \begin_inset Newline newline 399 \end_inset 400 401 day_length, month_lengths, year_length, 402 \begin_inset Newline newline 403 \end_inset 404 405 leap_year_month, leap_year_drift, 406 \begin_inset Newline newline 407 \end_inset 408 409 leap_year_drift_offset) 410 \end_layout 411 412 \begin_layout Standard 413 or using the following subroutine: 209 414 \end_layout 210 415 … … 213 418 \end_layout 214 419 215 \begin_layout LyX-Code 216 TYPE(xios_time) :: timestep 420 \begin_layout Subsection* 421 day_length: 422 \begin_inset Flex Emph 423 status collapsed 424 425 \begin_layout Plain Layout 426 integer 427 \end_layout 428 429 \end_inset 430 431 432 \end_layout 433 434 \begin_layout Standard 435 Fortran: 436 \end_layout 437 438 \begin_layout LyX-Code 439 INTEGER :: day_length 440 \end_layout 441 442 \begin_layout Standard 443 Define the duration of a day, in seconds, when using a custom calendar. 444 This attribute is mandatory if the calendar 445 \series bold 446 type 447 \series default 448 is set to " 449 \emph on 450 user_defined 451 \emph default 452 ", otherwise it must not be defined. 453 \begin_inset Newline newline 454 \end_inset 455 456 457 \begin_inset Newline newline 458 \end_inset 459 460 When using the Fortran interface, this attribute must be defined at the 461 same time as the calendar 462 \series bold 463 type 464 \series default 465 : 466 \end_layout 467 468 \begin_layout LyX-Code 469 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 470 \begin_inset Newline newline 471 \end_inset 472 473 day_length, month_lengths, year_length, 474 \begin_inset Newline newline 475 \end_inset 476 477 leap_year_month, leap_year_drift, 478 \begin_inset Newline newline 479 \end_inset 480 481 leap_year_drift_offset) 482 \end_layout 483 484 \begin_layout Subsection* 485 month_lengths: 486 \begin_inset Flex Emph 487 status collapsed 488 489 \begin_layout Plain Layout 490 1D-array of integer 491 \end_layout 492 493 \end_inset 494 495 496 \end_layout 497 498 \begin_layout Standard 499 Fortran: 500 \end_layout 501 502 \begin_layout LyX-Code 503 INTEGER :: month_lengths(:) 504 \end_layout 505 506 \begin_layout Standard 507 Define the duration of each month, in days, when using a custom calendar. 508 The number of elements in the array defines the number of months in a year 509 and the sum of all elements is the total number of days in a year. 510 This attribute is mandatory if the calendar 511 \series bold 512 type 513 \series default 514 is set to 515 \series bold 516 \emph on 517 user_defined 518 \series default 519 \emph default 520 and the 521 \series bold 522 year_length 523 \series default 524 attribute is not used, otherwise it must not be defined. 525 \begin_inset Newline newline 526 \end_inset 527 528 529 \begin_inset Newline newline 530 \end_inset 531 532 When using the Fortran interface, this attribute must be defined at the 533 same time as the calendar 534 \series bold 535 type 536 \series default 537 : 538 \end_layout 539 540 \begin_layout LyX-Code 541 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 542 \begin_inset Newline newline 543 \end_inset 544 545 day_length, month_lengths, year_length, 546 \begin_inset Newline newline 547 \end_inset 548 549 leap_year_month, leap_year_drift, 550 \begin_inset Newline newline 551 \end_inset 552 553 leap_year_drift_offset) 554 \end_layout 555 556 \begin_layout Subsection* 557 year_length: 558 \begin_inset Flex Emph 559 status collapsed 560 561 \begin_layout Plain Layout 562 integer 563 \end_layout 564 565 \end_inset 566 567 568 \end_layout 569 570 \begin_layout Standard 571 Fortran: 572 \end_layout 573 574 \begin_layout LyX-Code 575 INTEGER :: year_length 576 \end_layout 577 578 \begin_layout Standard 579 Define the duration of a year, in seconds, when using a custom calendar. 580 This attribute is mandatory if the calendar 581 \series bold 582 type 583 \series default 584 is set to 585 \series bold 586 \emph on 587 user_defined 588 \series default 589 \emph default 590 and the 591 \series bold 592 month_lengths 593 \series default 594 attribute is not used, otherwise it must not be defined. 595 \begin_inset Newline newline 596 \end_inset 597 598 599 \begin_inset Newline newline 600 \end_inset 601 602 Note that the date format is modified when using this attribute: the month 603 must be always be omitted and the day must also be omitted if 604 \begin_inset Formula $year\_length\leq day\_length$ 605 \end_inset 606 607 . 608 \begin_inset Newline newline 609 \end_inset 610 611 612 \begin_inset Newline newline 613 \end_inset 614 615 When using the Fortran interface, this attribute must be defined at the 616 same time as the calendar 617 \series bold 618 type 619 \series default 620 : 621 \end_layout 622 623 \begin_layout LyX-Code 624 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 625 \begin_inset Newline newline 626 \end_inset 627 628 day_length, month_lengths, year_length, 629 \begin_inset Newline newline 630 \end_inset 631 632 leap_year_month, leap_year_drift, 633 \begin_inset Newline newline 634 \end_inset 635 636 leap_year_drift_offset) 637 \end_layout 638 639 \begin_layout Subsection* 640 leap_year_month: 641 \begin_inset Flex Emph 642 status collapsed 643 644 \begin_layout Plain Layout 645 integer 646 \end_layout 647 648 \end_inset 649 650 651 \end_layout 652 653 \begin_layout Standard 654 Fortran: 655 \end_layout 656 657 \begin_layout LyX-Code 658 INTEGER :: leap_year_month 659 \end_layout 660 661 \begin_layout Standard 662 Define the month to which the extra day will be added in case of leap year, 663 when using a custom calendar. 664 This attribute is optional if the calendar 665 \series bold 666 type 667 \series default 668 is set to 669 \series bold 670 \emph on 671 user_defined 672 \series default 673 \emph default 674 and the 675 \series bold 676 month_lengths 677 \series default 678 attribute is used, otherwise it must not be defined. 679 The default behaviour is not to have any leap year. 680 If defined, this attribute must comply with the following constraint: 681 \begin_inset Formula $1\leq leap\_year\_month\leq size(month\_lengths)$ 682 \end_inset 683 684 and the 685 \series bold 686 leap_year_drift 687 \series default 688 attribute must also be defined. 689 \begin_inset Newline newline 690 \end_inset 691 692 693 \begin_inset Newline newline 694 \end_inset 695 696 When using the Fortran interface, this attribute must be defined at the 697 same time as the calendar 698 \series bold 699 type 700 \series default 701 : 702 \end_layout 703 704 \begin_layout LyX-Code 705 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 706 \begin_inset Newline newline 707 \end_inset 708 709 day_length, month_lengths, year_length, 710 \begin_inset Newline newline 711 \end_inset 712 713 leap_year_month, leap_year_drift, 714 \begin_inset Newline newline 715 \end_inset 716 717 leap_year_drift_offset) 718 \end_layout 719 720 \begin_layout Subsection* 721 leap_year_drift: 722 \begin_inset Flex Emph 723 status collapsed 724 725 \begin_layout Plain Layout 726 double 727 \end_layout 728 729 \end_inset 730 731 732 \end_layout 733 734 \begin_layout Standard 735 Fortran: 736 \end_layout 737 738 \begin_layout LyX-Code 739 DOUBLE PRECISION :: leap_year_drift 740 \end_layout 741 742 \begin_layout Standard 743 Define the yearly drift, expressed as a fraction of a day, between the calendar 744 year and the astronomical year, when using a custom calendar. 745 This attribute is optional if the calendar 746 \series bold 747 type 748 \series default 749 is set to 750 \series bold 751 \emph on 752 user_defined 753 \series default 754 \emph default 755 and the 756 \series bold 757 month_lengths 758 \series default 759 attribute is used, otherwise it must not be defined. 760 The default behaviour is not to have any leap year, i.e. 761 the default value is 762 \begin_inset Formula $\mathbf{0}$ 763 \end_inset 764 765 . 766 If defined, this attribute must comply with the following constraint: 767 \begin_inset Formula $0\leq leap\_year\_drift<1$ 768 \end_inset 769 770 and the 771 \series bold 772 leap_year_month 773 \series default 774 attribute must also be defined. 775 \begin_inset Newline newline 776 \end_inset 777 778 779 \begin_inset Newline newline 780 \end_inset 781 782 When using the Fortran interface, this attribute must be defined at the 783 same time as the calendar 784 \series bold 785 type 786 \series default 787 : 788 \end_layout 789 790 \begin_layout LyX-Code 791 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 792 \begin_inset Newline newline 793 \end_inset 794 795 day_length, month_lengths, year_length, 796 \begin_inset Newline newline 797 \end_inset 798 799 leap_year_month, leap_year_drift, 800 \begin_inset Newline newline 801 \end_inset 802 803 leap_year_drift_offset) 804 \end_layout 805 806 \begin_layout Subsection* 807 leap_year_drift_offset: 808 \begin_inset Flex Emph 809 status collapsed 810 811 \begin_layout Plain Layout 812 double 813 \end_layout 814 815 \end_inset 816 817 818 \end_layout 819 820 \begin_layout Standard 821 Fortran: 822 \end_layout 823 824 \begin_layout LyX-Code 825 DOUBLE PRECISION :: leap_year_drift_offset 826 \end_layout 827 828 \begin_layout Standard 829 Define the initial drift between the calendar year and the astronomical 830 year, expressed as a fraction of a day, at the beginning of the time origin's 831 year, when using a custom calendar. 832 This attribute is optional if the 833 \series bold 834 leap_year_month 835 \series default 836 and 837 \series bold 838 leap_year_drift 839 \series default 840 attributes are used, otherwise it must not be defined. 841 The default value is 842 \begin_inset Formula $\mathbf{0}$ 843 \end_inset 844 845 . 846 If defined, this attribute must comply with the following constraint: 847 \begin_inset Formula $0\leq leap\_year\_drift\_offset<1$ 848 \end_inset 849 850 . 851 If 852 \begin_inset Formula $leap\_yeap\_drift\_offset+leap\_yeap\_drift$ 853 \end_inset 854 855 is greater or equal to 1, then the first year will be a leap year. 856 \begin_inset Newline newline 857 \end_inset 858 859 860 \begin_inset Newline newline 861 \end_inset 862 863 When using the Fortran interface, this attribute must be defined at the 864 same time as the calendar 865 \series bold 866 type 867 \series default 868 : 869 \end_layout 870 871 \begin_layout LyX-Code 872 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 873 \begin_inset Newline newline 874 \end_inset 875 876 day_length, month_lengths, year_length, 877 \begin_inset Newline newline 878 \end_inset 879 880 leap_year_month, leap_year_drift, 881 \begin_inset Newline newline 882 \end_inset 883 884 leap_year_drift_offset) 217 885 \end_layout 218 886 … … 222 890 223 891 \begin_layout Subsection* 224 name 892 name: 225 893 \begin_inset Flex Emph 226 894 status collapsed … … 236 904 237 905 \begin_layout Standard 238 Fortran 906 Fortran: 239 907 \end_layout 240 908 … … 252 920 253 921 \begin_layout Subsection* 254 standard_name 922 standard_name: 255 923 \begin_inset Flex Emph 256 924 status collapsed … … 266 934 267 935 \begin_layout Standard 268 Fortran 936 Fortran: 269 937 \end_layout 270 938 … … 280 948 281 949 \begin_layout Subsection* 282 long_name 950 long_name: 283 951 \begin_inset Flex Emph 284 952 status collapsed … … 294 962 295 963 \begin_layout Standard 296 Fortran 964 Fortran: 297 965 \end_layout 298 966 … … 308 976 309 977 \begin_layout Subsection* 310 unit 978 unit: 311 979 \begin_inset Flex Emph 312 980 status collapsed … … 322 990 323 991 \begin_layout Standard 324 Fortran 992 Fortran: 325 993 \end_layout 326 994 … … 335 1003 336 1004 \begin_layout Subsection* 337 size 1005 size: 338 1006 \begin_inset Flex Emph 339 1007 status collapsed … … 349 1017 350 1018 \begin_layout Standard 351 Fortran 1019 Fortran: 352 1020 \end_layout 353 1021 … … 362 1030 363 1031 \begin_layout Subsection* 364 zoom_begin 1032 zoom_begin: 365 1033 \begin_inset Flex Emph 366 1034 status collapsed … … 376 1044 377 1045 \begin_layout Standard 378 Fortran 1046 Fortran: 379 1047 \end_layout 380 1048 … … 384 1052 385 1053 \begin_layout Standard 386 Define the the begin ing of the zoom.387 This must be an index betwe n 1 and1054 Define the the beginning of the zoom. 1055 This must be an index between 1 and 388 1056 \begin_inset Flex Strong 389 1057 status collapsed … … 421 1089 422 1090 \begin_layout Subsection* 423 zoom_end 1091 zoom_end: 424 1092 \begin_inset Flex Emph 425 1093 status collapsed … … 435 1103 436 1104 \begin_layout Standard 437 Fortran 1105 Fortran: 438 1106 \end_layout 439 1107 … … 490 1158 491 1159 \begin_layout Subsection* 492 zoom_size 1160 zoom_size: 493 1161 \begin_inset Flex Emph 494 1162 status collapsed … … 504 1172 505 1173 \begin_layout Standard 506 Fortran 1174 Fortran: 507 1175 \end_layout 508 1176 … … 513 1181 \begin_layout Standard 514 1182 Define the the size of the zoom. 515 This must be an integer betwe n 1 and1183 This must be an integer between 1 and 516 1184 \begin_inset Flex Strong 517 1185 status collapsed … … 559 1227 560 1228 \begin_layout Subsection* 561 value 1229 value: 562 1230 \begin_inset Flex Emph 563 1231 status collapsed … … 573 1241 574 1242 \begin_layout Standard 575 Fortran 1243 Fortran: 576 1244 \end_layout 577 1245 … … 611 1279 612 1280 \begin_layout Subsection* 613 name 1281 name: 614 1282 \begin_inset Flex Emph 615 1283 status collapsed … … 625 1293 626 1294 \begin_layout Standard 627 Fortran 1295 Fortran: 628 1296 \end_layout 629 1297 … … 652 1320 653 1321 \begin_layout Subsection* 654 type 1322 type: 655 1323 \begin_inset Flex Emph 656 1324 status collapsed 657 1325 658 1326 \begin_layout Plain Layout 659 enum { regular, curvilinear, unstructured}660 \end_layout 661 662 \end_inset 663 664 665 \end_layout 666 667 \begin_layout Standard 668 Fortran 1327 enumeration { regular, curvilinear, unstructured } 1328 \end_layout 1329 1330 \end_inset 1331 1332 1333 \end_layout 1334 1335 \begin_layout Standard 1336 Fortran: 669 1337 \end_layout 670 1338 … … 678 1346 679 1347 \begin_layout Subsection* 680 ni_glo 1348 ni_glo: 681 1349 \begin_inset Flex Emph 682 1350 status collapsed … … 692 1360 693 1361 \begin_layout Standard 694 Fortran 1362 Fortran: 695 1363 \end_layout 696 1364 … … 705 1373 706 1374 \begin_layout Subsection* 707 nj_glo 1375 nj_glo: 708 1376 \begin_inset Flex Emph 709 1377 status collapsed … … 719 1387 720 1388 \begin_layout Standard 721 Fortran 1389 Fortran: 722 1390 \end_layout 723 1391 … … 732 1400 733 1401 \begin_layout Subsection* 734 ni 1402 ni: 735 1403 \begin_inset Flex Emph 736 1404 status collapsed … … 746 1414 747 1415 \begin_layout Standard 748 Fortran 1416 Fortran: 749 1417 \end_layout 750 1418 … … 794 1462 795 1463 \begin_layout Subsection* 796 ibegin 1464 ibegin: 797 1465 \begin_inset Flex Emph 798 1466 status collapsed … … 808 1476 809 1477 \begin_layout Standard 810 Fortran 1478 Fortran: 811 1479 \end_layout 812 1480 … … 856 1524 857 1525 \begin_layout Subsection* 858 iend 1526 iend: 859 1527 \begin_inset Flex Emph 860 1528 status collapsed … … 870 1538 871 1539 \begin_layout Standard 872 Fortran 1540 Fortran: 873 1541 \end_layout 874 1542 … … 918 1586 919 1587 \begin_layout Subsection* 920 nj 1588 nj: 921 1589 \begin_inset Flex Emph 922 1590 status collapsed … … 932 1600 933 1601 \begin_layout Standard 934 Fortran 1602 Fortran: 935 1603 \end_layout 936 1604 … … 980 1648 981 1649 \begin_layout Subsection* 982 jbegin 1650 jbegin: 983 1651 \begin_inset Flex Emph 984 1652 status collapsed … … 994 1662 995 1663 \begin_layout Standard 996 Fortran 1664 Fortran: 997 1665 \end_layout 998 1666 … … 1002 1670 1003 1671 \begin_layout Standard 1004 Define the begin ing index of the second dimension of the local domain.1672 Define the beginning index of the second dimension of the local domain. 1005 1673 This attribute may be also computed from 1006 1674 \begin_inset Flex Strong … … 1042 1710 1043 1711 \begin_layout Subsection* 1044 jend 1712 jend: 1045 1713 \begin_inset Flex Emph 1046 1714 status collapsed … … 1056 1724 1057 1725 \begin_layout Standard 1058 Fortran 1726 Fortran: 1059 1727 \end_layout 1060 1728 … … 1104 1772 1105 1773 \begin_layout Subsection* 1106 zoom_ni 1774 zoom_ni: 1107 1775 \emph on 1108 1776 integer … … 1110 1778 1111 1779 \begin_layout Standard 1112 Fortran 1780 Fortran: 1113 1781 \end_layout 1114 1782 … … 1141 1809 1142 1810 \begin_layout Subsection* 1143 zoom_ibegin 1811 zoom_ibegin: 1144 1812 \emph on 1145 1813 integer … … 1155 1823 1156 1824 \begin_layout Standard 1157 Define the begin ing index on the first dimension of the zoom for the global1825 Define the beginning index on the first dimension of the zoom for the global 1158 1826 domain. 1159 1827 This attribute is optional. … … 1172 1840 1173 1841 \begin_layout Subsection* 1174 zoom_nj 1842 zoom_nj: 1175 1843 \emph on 1176 1844 integer … … 1178 1846 1179 1847 \begin_layout Standard 1180 Fortran 1848 Fortran: 1181 1849 \end_layout 1182 1850 … … 1209 1877 1210 1878 \begin_layout Subsection* 1211 zoom_jbegin 1879 zoom_jbegin: 1212 1880 \emph on 1213 1881 integer … … 1215 1883 1216 1884 \begin_layout Standard 1217 Fortran 1885 Fortran: 1218 1886 \end_layout 1219 1887 … … 1223 1891 1224 1892 \begin_layout Standard 1225 Define the begin ing index on the second dimension of the zoom for the global1893 Define the beginning index on the second dimension of the zoom for the global 1226 1894 domain. 1227 1895 This attribute is optional. … … 1240 1908 1241 1909 \begin_layout Subsection* 1242 mask 1910 mask: 1243 1911 \emph on 1244 1912 2D-array of bool … … 1246 1914 1247 1915 \begin_layout Standard 1248 Fortran 1916 Fortran: 1249 1917 \end_layout 1250 1918 … … 1269 1937 1270 1938 \begin_layout Subsection* 1271 lonvalue 1939 lonvalue: 1272 1940 \emph on 1273 1941 1D-array of double … … 1275 1943 1276 1944 \begin_layout Standard 1277 Fortran 1945 Fortran: 1278 1946 \end_layout 1279 1947 … … 1314 1982 1315 1983 \begin_layout Subsection* 1316 latvalue 1984 latvalue: 1317 1985 \emph on 1318 1986 1D-array of double … … 1320 1988 1321 1989 \begin_layout Standard 1322 Fortran 1990 Fortran: 1323 1991 \end_layout 1324 1992 … … 1349 2017 1350 2018 \begin_layout Subsection* 1351 nvertex 2019 nvertex: 1352 2020 \emph on 1353 2021 integer … … 1355 2023 1356 2024 \begin_layout Standard 1357 Fortran 2025 Fortran: 1358 2026 \end_layout 1359 2027 … … 1369 2037 1370 2038 \begin_layout Subsection* 1371 bounds_lon 2039 bounds_lon: 1372 2040 \emph on 1373 2041 1D-array of double … … 1375 2043 1376 2044 \begin_layout Standard 1377 Fortran 2045 Fortran: 1378 2046 \end_layout 1379 2047 … … 1398 2066 1399 2067 \begin_layout Subsection* 1400 bounds_lat 2068 bounds_lat: 1401 2069 \emph on 1402 2070 1D-array of double … … 1404 2072 1405 2073 \begin_layout Standard 1406 Fortran 2074 Fortran: 1407 2075 \end_layout 1408 2076 … … 1427 2095 1428 2096 \begin_layout Subsection* 1429 data_dim 2097 data_dim: 1430 2098 \emph on 1431 2099 integer … … 1433 2101 1434 2102 \begin_layout Standard 1435 Fortran 2103 Fortran: 1436 2104 \end_layout 1437 2105 … … 1500 2168 1501 2169 \begin_layout Subsection* 1502 data_ibegin 2170 data_ibegin: 1503 2171 \emph on 1504 2172 integer … … 1506 2174 1507 2175 \begin_layout Standard 1508 Fortran 2176 Fortran: 1509 2177 \end_layout 1510 2178 … … 1514 2182 1515 2183 \begin_layout Standard 1516 Define the begin ing index of the field data for the first dimension.2184 Define the beginning index of the field data for the first dimension. 1517 2185 This attribute is an offset regarding the local domain, so the value can 1518 2186 be negative. … … 1547 2215 1548 2216 \begin_layout Subsection* 1549 data_ni 2217 data_ni: 1550 2218 \emph on 1551 2219 integer … … 1553 2221 1554 2222 \begin_layout Standard 1555 Fortran 2223 Fortran: 1556 2224 \end_layout 1557 2225 … … 1597 2265 1598 2266 \begin_layout Subsection* 1599 data_jbegin 2267 data_jbegin: 1600 2268 \emph on 1601 2269 integer … … 1603 2271 1604 2272 \begin_layout Standard 1605 Fortran 2273 Fortran: 1606 2274 \end_layout 1607 2275 … … 1611 2279 1612 2280 \begin_layout Standard 1613 Define the begin ing index of the field data for the second dimension.2281 Define the beginning index of the field data for the second dimension. 1614 2282 This attribute is take account only if 1615 2283 \begin_inset Flex Strong … … 1665 2333 1666 2334 \begin_layout Subsection* 1667 data_nj 2335 data_nj: 1668 2336 \emph on 1669 2337 integer … … 1671 2339 1672 2340 \begin_layout Standard 1673 Fortran 2341 Fortran: 1674 2342 \end_layout 1675 2343 … … 1726 2394 1727 2395 \begin_layout Subsection* 1728 data_n_index 2396 data_n_index: 1729 2397 \emph on 1730 2398 integer … … 1732 2400 1733 2401 \begin_layout Standard 1734 Fortran 2402 Fortran: 1735 2403 \end_layout 1736 2404 … … 1745 2413 1746 2414 \begin_layout Subsection* 1747 data_i_index 2415 data_i_index: 1748 2416 \emph on 1749 2417 1D-array of integer … … 1751 2419 1752 2420 \begin_layout Standard 1753 Fortran 2421 Fortran: 1754 2422 \end_layout 1755 2423 … … 1776 2444 1777 2445 \begin_layout Subsection* 1778 data_j_index 2446 data_j_index: 1779 2447 \emph on 1780 2448 1D-array of integer … … 1782 2450 1783 2451 \begin_layout Standard 1784 Fortran 2452 Fortran: 1785 2453 \end_layout 1786 2454 … … 1822 2490 1823 2491 \begin_layout Subsection* 1824 name 1825 \end_layout 1826 1827 \begin_layout Standard 1828 Fortran 2492 name: string 2493 \end_layout 2494 2495 \begin_layout Standard 2496 Fortran: 1829 2497 \end_layout 1830 2498 … … 1840 2508 1841 2509 \begin_layout Subsection* 1842 domain_ref 1843 \end_layout 1844 1845 \begin_layout Standard 1846 Fortran 2510 domain_ref: string 2511 \end_layout 2512 2513 \begin_layout Standard 2514 Fortran: 1847 2515 \end_layout 1848 2516 … … 1857 2525 1858 2526 \begin_layout Subsection* 1859 axis_ref 1860 \end_layout 1861 1862 \begin_layout Standard 1863 Fortran 2527 axis_ref: string 2528 \end_layout 2529 2530 \begin_layout Standard 2531 Fortran: 1864 2532 \end_layout 1865 2533 … … 1875 2543 1876 2544 \begin_layout Subsection* 1877 mask 2545 mask: 1878 2546 \emph on 1879 2547 3D-array of bool … … 1881 2549 1882 2550 \begin_layout Standard 1883 Fortran 2551 Fortran: 1884 2552 \end_layout 1885 2553 … … 1908 2576 1909 2577 \begin_layout Subsection* 1910 name 2578 name: 1911 2579 \emph on 1912 2580 string … … 1914 2582 1915 2583 \begin_layout Standard 1916 Fortran 2584 Fortran: 1917 2585 \end_layout 1918 2586 … … 1932 2600 \end_inset 1933 2601 1934 of the field as it will ap ear in an ouput file.1935 This attribut is optional.1936 If not present, the identif er2602 of the field as it will appear in an output file. 2603 This attribute is optional. 2604 If not present, the identifier 1937 2605 \begin_inset Flex Strong 1938 2606 status collapsed … … 1948 2616 1949 2617 \begin_layout Subsection* 1950 standard_name 2618 standard_name: 1951 2619 \emph on 1952 2620 string … … 1954 2622 1955 2623 \begin_layout Standard 1956 Fortran 2624 Fortran: 1957 2625 \end_layout 1958 2626 … … 1968 2636 \begin_layout Plain Layout 1969 2637 standard_name 1970 \end_layout1971 1972 \end_inset1973 1974 attribute as it will appear in the metadata of an ouput file.1975 This attribute is optional.1976 \end_layout1977 1978 \begin_layout Subsection*1979 long_name :1980 \emph on1981 string1982 \end_layout1983 1984 \begin_layout Standard1985 Fortran :1986 \end_layout1987 1988 \begin_layout LyX-Code1989 CHARACTER(LEN=*) :: long_name1990 \end_layout1991 1992 \begin_layout Standard1993 Define the1994 \begin_inset Flex Strong1995 status collapsed1996 1997 \begin_layout Plain Layout1998 long_name1999 2638 \end_layout 2000 2639 … … 2006 2645 2007 2646 \begin_layout Subsection* 2008 unit:2647 long_name: 2009 2648 \emph on 2010 2649 string … … 2012 2651 2013 2652 \begin_layout Standard 2014 Fortran : 2653 Fortran: 2654 \end_layout 2655 2656 \begin_layout LyX-Code 2657 CHARACTER(LEN=*) :: long_name 2658 \end_layout 2659 2660 \begin_layout Standard 2661 Define the 2662 \begin_inset Flex Strong 2663 status collapsed 2664 2665 \begin_layout Plain Layout 2666 long_name 2667 \end_layout 2668 2669 \end_inset 2670 2671 attribute as it will appear in the metadata of an output file. 2672 This attribute is optional. 2673 \end_layout 2674 2675 \begin_layout Subsection* 2676 unit: 2677 \emph on 2678 string 2679 \end_layout 2680 2681 \begin_layout Standard 2682 Fortran: 2015 2683 \end_layout 2016 2684 … … 2035 2703 2036 2704 \begin_layout Subsection* 2037 operation :2038 \emph on 2039 enum{ once, instant, average, maximum, minimum, accumulate }2040 \end_layout 2041 2042 \begin_layout Standard 2043 Fortran 2705 operation: enumeration 2706 \emph on 2707 { once, instant, average, maximum, minimum, accumulate } 2708 \end_layout 2709 2710 \begin_layout Standard 2711 Fortran: 2044 2712 \end_layout 2045 2713 … … 2050 2718 \begin_layout Standard 2051 2719 Define the temporal operation applied on the field. 2052 This attribute is mandatory.2053 \end_layout 2054 2055 \begin_layout Subsection* 2056 freq_op 2720 This attribute is optional, by default no operation is applied. 2721 \end_layout 2722 2723 \begin_layout Subsection* 2724 freq_op: 2057 2725 \emph on 2058 2726 duration … … 2060 2728 2061 2729 \begin_layout Standard 2062 Fortran 2063 \end_layout 2064 2065 \begin_layout LyX-Code 2066 CHARACTER(LEN=*) :: freq_op2730 Fortran: 2731 \end_layout 2732 2733 \begin_layout LyX-Code 2734 TYPE(xios_duration) :: freq_op 2067 2735 \end_layout 2068 2736 … … 2079 2747 \end_inset 2080 2748 2081 time step.2082 It is very useful l for sub-processus called at different frequency in a2749 time step. 2750 It is very useful for sub-processes called at different frequency in a 2083 2751 model. 2084 2752 This attribute is optional, the default value is … … 2092 2760 \end_inset 2093 2761 2094 ( 2095 \end_layout 2096 2097 \begin_layout Subsection* 2098 freq_offset 2762 (1 time step). 2763 \end_layout 2764 2765 \begin_layout Subsection* 2766 freq_offset: 2099 2767 \emph on 2100 2768 duration … … 2102 2770 2103 2771 \begin_layout Standard 2104 Fortran 2105 \end_layout 2106 2107 \begin_layout LyX-Code 2108 CHARACTER(LEN=*) :: freq_offset2772 Fortran: 2773 \end_layout 2774 2775 \begin_layout LyX-Code 2776 TYPE(xios_duration) :: freq_offset 2109 2777 \end_layout 2110 2778 … … 2142 2810 2143 2811 \begin_layout Subsection* 2144 level 2812 level: 2145 2813 \emph on 2146 2814 integer … … 2148 2816 2149 2817 \begin_layout Standard 2150 Fortran 2818 Fortran: 2151 2819 \end_layout 2152 2820 … … 2186 2854 2187 2855 \begin_layout Subsection* 2188 prec 2856 prec: 2189 2857 \emph on 2190 2858 integer … … 2192 2860 2193 2861 \begin_layout Standard 2194 Fortran 2862 Fortran: 2195 2863 \end_layout 2196 2864 … … 2201 2869 \begin_layout Standard 2202 2870 Define the precision in byte of a field in an output file. 2203 Available value are 2871 Available value are: 2 (integer), 4 (float single precision) and 8 (float 2204 2872 double precision). 2205 2873 \end_layout 2206 2874 2207 2875 \begin_layout Subsection* 2208 enabled 2876 enabled: 2209 2877 \emph on 2210 2878 bool … … 2212 2880 2213 2881 \begin_layout Standard 2214 Fortran 2882 Fortran: 2215 2883 \end_layout 2216 2884 … … 2221 2889 \begin_layout Standard 2222 2890 Define if a field must be output or not. 2223 This attribut is optional, the default value is2891 This attribute is optional, the default value is 2224 2892 \begin_inset Flex Strong 2225 2893 status collapsed … … 2235 2903 2236 2904 \begin_layout Subsection* 2237 field_ref 2905 field_ref: 2238 2906 \emph on 2239 2907 string … … 2241 2909 2242 2910 \begin_layout Standard 2243 Fortran 2911 Fortran: 2244 2912 \end_layout 2245 2913 … … 2251 2919 Define a field reference. 2252 2920 All attributes are inherited from the referenced field after the classical 2253 inherit ence mechanism.2921 inheritance mechanism. 2254 2922 The value assigned to the referenced field is transmitted to to current 2255 2923 field to perform temporal operation. … … 2258 2926 2259 2927 \begin_layout Subsection* 2260 grid_ref 2928 grid_ref: 2261 2929 \emph on 2262 2930 string … … 2264 2932 2265 2933 \begin_layout Standard 2266 Fortran 2934 Fortran: 2267 2935 \end_layout 2268 2936 … … 2273 2941 \begin_layout Standard 2274 2942 Define on which grid the current field is defined. 2275 This attribut is optional, if missing, domain_ref and axis_ref must be2943 This attribute is optional, if missing, domain_ref and axis_ref must be 2276 2944 defining. 2277 2945 \end_layout 2278 2946 2279 2947 \begin_layout Subsection* 2280 domain_ref 2948 domain_ref: 2281 2949 \emph on 2282 2950 string … … 2284 2952 2285 2953 \begin_layout Standard 2286 Fortran 2954 Fortran: 2287 2955 \end_layout 2288 2956 … … 2293 2961 \begin_layout Standard 2294 2962 Define on which horizontal domain the current field is defined. 2295 This attribut is optional, but if this attribute is defined,2963 This attribute is optional, but if this attribute is defined, 2296 2964 \begin_inset Flex Strong 2297 2965 status collapsed … … 2307 2975 2308 2976 \begin_layout Subsection* 2309 axis_ref 2977 axis_ref: 2310 2978 \emph on 2311 2979 string … … 2313 2981 2314 2982 \begin_layout Standard 2315 Fortran 2983 Fortran: 2316 2984 \end_layout 2317 2985 … … 2346 3014 2347 3015 \begin_layout Subsection* 2348 default_value 3016 default_value: 2349 3017 \emph on 2350 3018 double … … 2352 3020 2353 3021 \begin_layout Standard 2354 Fortran 3022 Fortran: 2355 3023 \end_layout 2356 3024 … … 2376 3044 2377 3045 \begin_layout Subsection* 2378 valid_min 3046 valid_min: 2379 3047 \emph on 2380 3048 double … … 2382 3050 2383 3051 \begin_layout Standard 2384 Fortran 3052 Fortran: 2385 3053 \end_layout 2386 3054 … … 2404 3072 2405 3073 \begin_layout Subsection* 2406 valid_min 3074 valid_min: 2407 3075 \emph on 2408 3076 double … … 2410 3078 2411 3079 \begin_layout Standard 2412 Fortran 3080 Fortran: 2413 3081 \end_layout 2414 3082 … … 2432 3100 2433 3101 \begin_layout Subsection* 2434 detect_missing_value 3102 detect_missing_value: 2435 3103 \emph on 2436 3104 bool … … 2438 3106 2439 3107 \begin_layout Standard 2440 Fortran 2441 \end_layout 2442 2443 \begin_layout LyX-Code 2444 LOGICAL 3108 Fortran: 3109 \end_layout 3110 3111 \begin_layout LyX-Code 3112 LOGICAL: detect_missing_value 2445 3113 \end_layout 2446 3114 … … 2451 3119 2452 3120 \begin_layout Subsection* 2453 add_offset 3121 add_offset: 2454 3122 \emph on 2455 3123 double … … 2457 3125 2458 3126 \begin_layout Standard 2459 Fortran 2460 \end_layout 2461 2462 \begin_layout LyX-Code 2463 DOUBLE PRECISION 3127 Fortran: 3128 \end_layout 3129 3130 \begin_layout LyX-Code 3131 DOUBLE PRECISION: add_offset 2464 3132 \end_layout 2465 3133 … … 2467 3135 Set the 2468 3136 \begin_inset Flex Strong 2469 status open3137 status collapsed 2470 3138 2471 3139 \begin_layout Plain Layout … … 2478 3146 In output, the 2479 3147 \begin_inset Flex Strong 2480 status open3148 status collapsed 2481 3149 2482 3150 \begin_layout Plain Layout … … 2486 3154 \end_inset 2487 3155 2488 value is sub stracted to the field values.2489 \end_layout 2490 2491 \begin_layout Subsection* 2492 scale_factor 3156 value is subtracted to the field values. 3157 \end_layout 3158 3159 \begin_layout Subsection* 3160 scale_factor: 2493 3161 \emph on 2494 3162 double … … 2496 3164 2497 3165 \begin_layout Standard 2498 Fortran 2499 \end_layout 2500 2501 \begin_layout LyX-Code 2502 DOUBLE PRECISION 3166 Fortran: 3167 \end_layout 3168 3169 \begin_layout LyX-Code 3170 DOUBLE PRECISION: scale_factor 2503 3171 \end_layout 2504 3172 … … 2506 3174 Set the 2507 3175 \begin_inset Flex Strong 2508 status open3176 status collapsed 2509 3177 2510 3178 \begin_layout Plain Layout … … 2517 3185 In output, the field values are divided by the 2518 3186 \begin_inset Flex Strong 2519 status open3187 status collapsed 2520 3188 2521 3189 \begin_layout Plain Layout … … 2533 3201 2534 3202 \begin_layout Subsection* 2535 name 3203 name: 2536 3204 \emph on 2537 3205 string … … 2539 3207 2540 3208 \begin_layout Standard 2541 Fortran 3209 Fortran: 2542 3210 \end_layout 2543 3211 … … 2557 3225 \end_inset 2558 3226 2559 of the variable as it will apear in an ouput file. 2560 This attribut is optional. 2561 \end_layout 2562 2563 \begin_layout Subsection* 2564 name : 2565 \emph on 3227 of the variable as it will appear in an output file. 3228 This attribute is optional. 3229 \end_layout 3230 3231 \begin_layout Subsection* 3232 type: enumeration { bool, int, int32, int16, int64, float, double, string 3233 } 3234 \end_layout 3235 3236 \begin_layout Standard 3237 Fortran: 3238 \end_layout 3239 3240 \begin_layout LyX-Code 3241 CHARACTER(LEN=*) :: type 3242 \end_layout 3243 3244 \begin_layout Standard 3245 Define the 3246 \begin_inset Flex Strong 3247 status collapsed 3248 3249 \begin_layout Plain Layout 2566 3250 type 2567 3251 \end_layout 2568 3252 2569 \begin_layout Standard 2570 Fortran : 2571 \end_layout 2572 2573 \begin_layout LyX-Code 2574 CHARACTER(LEN=*) :: type 2575 \end_layout 2576 2577 \begin_layout Standard 2578 Define the 2579 \begin_inset Flex Strong 2580 status collapsed 2581 2582 \begin_layout Plain Layout 2583 type 2584 \end_layout 2585 2586 \end_inset 2587 2588 of the variable : possible value are : 2589 \begin_inset Flex Strong 2590 status open 2591 2592 \begin_layout Plain Layout 2593 int, short /short int, lon / long int, float, double, long double, bool, 2594 string 2595 \end_layout 2596 2597 \end_inset 2598 3253 \end_inset 3254 3255 of the variable. 3256 Note that the 3257 \series bold 3258 \emph on 3259 int 3260 \series default 3261 \emph default 3262 type is a synonym for 3263 \series bold 3264 \emph on 3265 int32 3266 \series default 3267 \emph default 2599 3268 . 2600 This attribut is optional.3269 This attribute is optional. 2601 3270 \end_layout 2602 3271 … … 2606 3275 2607 3276 \begin_layout Subsection* 2608 name 3277 name: 2609 3278 \emph on 2610 3279 string … … 2612 3281 2613 3282 \begin_layout Standard 2614 Fortran 3283 Fortran: 2615 3284 \end_layout 2616 3285 … … 2620 3289 2621 3290 \begin_layout Standard 2622 Define the name of the ou put file.3291 Define the name of the output file. 2623 3292 This attribute is mandatory. 2624 3293 \end_layout 2625 3294 2626 3295 \begin_layout Subsection* 2627 name_suffix 3296 name_suffix: 2628 3297 \emph on 2629 3298 string … … 2631 3300 2632 3301 \begin_layout Standard 2633 Fortran 3302 Fortran: 2634 3303 \end_layout 2635 3304 … … 2640 3309 \begin_layout Standard 2641 3310 Define a suffix to add to the name of the output file. 2642 Thisn attribute is optional. 2643 \end_layout 2644 2645 \begin_layout Subsection* 2646 output_freq : 3311 This attribute is optional. 3312 \end_layout 3313 3314 \begin_layout Subsection* 3315 min_digits: 3316 \emph on 3317 integer 3318 \end_layout 3319 3320 \begin_layout Standard 3321 Fortran: 3322 \end_layout 3323 3324 \begin_layout LyX-Code 3325 INTEGER :: min_digits 3326 \end_layout 3327 3328 \begin_layout Standard 3329 For multiple_file, define the minimum digits composing the suffix defining 3330 the rank of the server, which will be happened to the name of the output 3331 file. 3332 This attribute is optional and the default value is 3333 \begin_inset Flex Strong 3334 status collapsed 3335 3336 \begin_layout Plain Layout 3337 0 3338 \end_layout 3339 3340 \end_inset 3341 3342 . 3343 \end_layout 3344 3345 \begin_layout Subsection* 3346 output_freq: 2647 3347 \emph on 2648 3348 duration … … 2650 3350 2651 3351 \begin_layout Standard 2652 Fortran 2653 \end_layout 2654 2655 \begin_layout LyX-Code 2656 CHARACTER(LEN=*) :: output_freq3352 Fortran: 3353 \end_layout 3354 3355 \begin_layout LyX-Code 3356 TYPE(xios_duration) :: output_freq 2657 3357 \end_layout 2658 3358 … … 2663 3363 2664 3364 \begin_layout Subsection* 2665 output_level 3365 output_level: 2666 3366 \emph on 2667 3367 integer … … 2669 3369 2670 3370 \begin_layout Standard 2671 Fortran 3371 Fortran: 2672 3372 \end_layout 2673 3373 … … 2686 3386 2687 3387 \begin_layout Subsection* 2688 sync_freq 3388 sync_freq: 2689 3389 \emph on 2690 3390 duration … … 2692 3392 2693 3393 \begin_layout Standard 2694 Fortran 2695 \end_layout 2696 2697 \begin_layout LyX-Code 2698 CHARACTER(LEN=*) :: sync_freq3394 Fortran: 3395 \end_layout 3396 3397 \begin_layout LyX-Code 3398 TYPE(xios_duration) :: sync_freq 2699 3399 \end_layout 2700 3400 … … 2707 3407 2708 3408 \begin_layout Subsection* 2709 split_freq 3409 split_freq: 2710 3410 \emph on 2711 3411 duration … … 2713 3413 2714 3414 \begin_layout Standard 2715 Fortran 2716 \end_layout 2717 2718 \begin_layout LyX-Code 2719 CHARACTER(LEN=*) :: split_freq3415 Fortran: 3416 \end_layout 3417 3418 \begin_layout LyX-Code 3419 TYPE(xios_duration) :: split_freq 2720 3420 \end_layout 2721 3421 2722 3422 \begin_layout Standard 2723 3423 Define the time frequency for splitting the current file. 2724 Date is suffixed to the name (see 3424 In that case, the start and end dates are added to the file 3425 \series bold 3426 name 3427 \series default 3428 (see 2725 3429 \begin_inset Flex Emph 2726 3430 status collapsed 2727 3431 2728 3432 \begin_layout Plain Layout 3433 3434 \series bold 3435 \emph on 2729 3436 split_freq_format 2730 3437 \end_layout … … 2733 3440 2734 3441 attribute). 2735 This attribute is optional .2736 \end_layout 2737 2738 \begin_layout Subsection* 2739 split_freq_format 3442 This attribute is optional, by default no splitting is done. 3443 \end_layout 3444 3445 \begin_layout Subsection* 3446 split_freq_format: 2740 3447 \emph on 2741 3448 string … … 2743 3450 2744 3451 \begin_layout Standard 2745 Fortran 3452 Fortran: 2746 3453 \end_layout 2747 3454 … … 2752 3459 \begin_layout Standard 2753 3460 Define the format of the split date suffixed to the file. 2754 Can contain any character, %y will be replaced by the year (4 characters), 2755 %mo month (2 char), %d day (2 char), %mi minute (2 char), %s second (2 2756 char). 2757 This attribute is optional. 2758 and the default behavior is to create a suffix with the date until the 2759 smaller non zero unit. 2760 For example, in one day split frequency, the hour minute and second will 2761 note appear in the suffix, only year, month and day. 2762 \end_layout 2763 2764 \begin_layout Subsection* 2765 enabled : 3461 Can contain any character, 3462 \emph on 3463 3464 \begin_inset Flex Code 3465 status collapsed 3466 3467 \begin_layout Plain Layout 3468 %y 3469 \end_layout 3470 3471 \end_inset 3472 3473 3474 \emph default 3475 will be replaced by the year (4 characters), 3476 \begin_inset Flex Code 3477 status collapsed 3478 3479 \begin_layout Plain Layout 3480 %mo 3481 \end_layout 3482 3483 \end_inset 3484 3485 by the month (2 char), 3486 \begin_inset Flex Code 3487 status collapsed 3488 3489 \begin_layout Plain Layout 3490 %d 3491 \end_layout 3492 3493 \end_inset 3494 3495 by the day (2 char), 3496 \begin_inset Flex Code 3497 status collapsed 3498 3499 \begin_layout Plain Layout 3500 %h 3501 \end_layout 3502 3503 \end_inset 3504 3505 by the hour (2 char), 3506 \begin_inset Flex Code 3507 status collapsed 3508 3509 \begin_layout Plain Layout 3510 %mi 3511 \end_layout 3512 3513 \end_inset 3514 3515 by the minute (2 char), 3516 \begin_inset Flex Code 3517 status collapsed 3518 3519 \begin_layout Plain Layout 3520 %s 3521 \end_layout 3522 3523 \end_inset 3524 3525 by the second (2 char), 3526 \begin_inset Flex Code 3527 status collapsed 3528 3529 \begin_layout Plain Layout 3530 %S 3531 \end_layout 3532 3533 \end_inset 3534 3535 by the number of seconds since the time origin and 3536 \begin_inset Flex Code 3537 status collapsed 3538 3539 \begin_layout Plain Layout 3540 %D 3541 \end_layout 3542 3543 \end_inset 3544 3545 by the number of full days since the time origin. 3546 This attribute is optional and the default behavior is to create a suffix 3547 with the date until the smaller non zero unit. 3548 For example, in one day split frequency, the hour, minute and second will 3549 not appear in the suffix, only year, month and day. 3550 \end_layout 3551 3552 \begin_layout Subsection* 3553 enabled: 2766 3554 \emph on 2767 3555 bool … … 2769 3557 2770 3558 \begin_layout Standard 2771 Fortran 3559 Fortran: 2772 3560 \end_layout 2773 3561 … … 2778 3566 \begin_layout Standard 2779 3567 Define if a file must be output or not. 2780 This attribute is mandatory, the default value is3568 This attribute is optional, the default value is 2781 3569 \begin_inset Flex Strong 2782 3570 status collapsed … … 2792 3580 2793 3581 \begin_layout Subsection* 2794 type 3582 type: 2795 3583 \emph on 2796 3584 enumeration { one_file, multiple_file} … … 2798 3586 2799 3587 \begin_layout Standard 2800 Fortran 3588 Fortran: 2801 3589 \end_layout 2802 3590 … … 2806 3594 2807 3595 \begin_layout Standard 2808 Define which type of file will be output. 2809 2810 \begin_inset Flex Strong 2811 status collapsed 2812 2813 \begin_layout Plain Layout 3596 Define the type of the output file: 3597 \begin_inset Flex Strong 3598 status collapsed 3599 3600 \begin_layout Plain Layout 3601 3602 \emph on 2814 3603 multiple_file 2815 3604 \end_layout … … 2817 3606 \end_inset 2818 3607 2819 : one file by server using sequential netcdf writing. 2820 2821 \begin_inset Flex Strong 2822 status collapsed 2823 2824 \begin_layout Plain Layout 3608 : one file by server using sequential netcdf writing, 3609 \begin_inset Flex Strong 3610 status collapsed 3611 3612 \begin_layout Plain Layout 3613 3614 \emph on 2825 3615 one_file 2826 3616 \end_layout … … 2828 3618 \end_inset 2829 3619 2830 : one single global file is wrote using netcdf4 parallel access. 2831 \end_layout 2832 2833 \begin_layout Subsection* 2834 par_access : 3620 : one single global file is wrote using netcdf4 parallel access. 3621 This attribute is mandatory. 3622 \end_layout 3623 3624 \begin_layout Subsection* 3625 format: 3626 \emph on 3627 enumeration { netcdf4, netcdf4_classic} 3628 \end_layout 3629 3630 \begin_layout Standard 3631 Fortran: 3632 \end_layout 3633 3634 \begin_layout LyX-Code 3635 CHARACTER(LEN=*) :: type 3636 \end_layout 3637 3638 \begin_layout Standard 3639 Define the format of the output file: 3640 \begin_inset Flex Strong 3641 status collapsed 3642 3643 \begin_layout Plain Layout 3644 3645 \emph on 3646 netcdf4 3647 \end_layout 3648 3649 \end_inset 3650 3651 : the HDF5 format will be used, 3652 \begin_inset Flex Strong 3653 status collapsed 3654 3655 \begin_layout Plain Layout 3656 3657 \emph on 3658 netcdf4 3659 \emph default 3660 _ 3661 \emph on 3662 classic 3663 \end_layout 3664 3665 \end_inset 3666 3667 : the classic NetCDF format will be used. 3668 The attribute is optional, the default value is 3669 \series bold 3670 \emph on 3671 netcdf4 3672 \series default 3673 \emph default 3674 . 3675 \begin_inset Newline newline 3676 \end_inset 3677 3678 3679 \begin_inset Newline newline 3680 \end_inset 3681 3682 Note that the 3683 \series bold 3684 \emph on 3685 netcdf4 3686 \emph default 3687 _ 3688 \emph on 3689 classic 3690 \series default 3691 \emph default 3692 format can be used with the attribute 3693 \series bold 3694 type 3695 \series default 3696 set to 3697 \series bold 3698 \emph on 3699 one_file 3700 \series default 3701 \emph default 3702 only if the NetCDF4 library was compiled with Parallel NetCDF support (--enable 3703 -pnetcdf). 3704 \end_layout 3705 3706 \begin_layout Subsection* 3707 par_access: 2835 3708 \emph on 2836 3709 enumeration { collective, independent } … … 2838 3711 2839 3712 \begin_layout Standard 2840 Fortran 3713 Fortran: 2841 3714 \end_layout 2842 3715 … … 2846 3719 2847 3720 \begin_layout Standard 2848 For parallel writting, define the MPI call used. 2849 This attribut is optional, the default value is 2850 \begin_inset Flex Strong 2851 status collapsed 2852 2853 \begin_layout Plain Layout 3721 For parallel writing, define which type of MPI calls will be used. 3722 This attribute is optional, the default value is 3723 \begin_inset Flex Strong 3724 status collapsed 3725 3726 \begin_layout Plain Layout 3727 3728 \emph on 2854 3729 collective 2855 3730 \end_layout … … 2861 3736 2862 3737 \begin_layout Subsection* 2863 min_digits : 2864 \emph on 2865 integer 2866 \end_layout 2867 2868 \begin_layout Standard 2869 Fortran : 2870 \end_layout 2871 2872 \begin_layout LyX-Code 2873 INTEGER :: min_digits 2874 \end_layout 2875 2876 \begin_layout Standard 2877 For multiple_file, define the minimum digits composing the suffix defining 2878 the rank of the server, which will be happened to the name of the output 2879 file. 2880 This attribut is optional and the default value is 2881 \begin_inset Flex Strong 2882 status collapsed 2883 2884 \begin_layout Plain Layout 2885 0 3738 append: 3739 \emph on 3740 bool 3741 \end_layout 3742 3743 \begin_layout Standard 3744 Fortran: 3745 \end_layout 3746 3747 \begin_layout LyX-Code 3748 LOGICAL :: append 3749 \end_layout 3750 3751 \begin_layout Standard 3752 Define whether the output data is to be appended at the end of the file 3753 if it already exists or if the existing file is to be overwritten. 3754 This attribute is optional, the default value is 3755 \begin_inset Flex Strong 3756 status collapsed 3757 3758 \begin_layout Plain Layout 3759 3760 \emph on 3761 false 2886 3762 \end_layout 2887 3763 … … 2904 3780 2905 3781 \begin_layout Subsubsection* 2906 Synopsis 3782 Synopsis: 2907 3783 \end_layout 2908 3784 … … 2924 3800 2925 3801 \begin_layout Subsubsection* 2926 Argument 3802 Argument: 2927 3803 \end_layout 2928 3804 … … 2937 3813 \end_inset 2938 3814 2939 3815 : client identifier 2940 3816 \end_layout 2941 3817 … … 2950 3826 \end_inset 2951 3827 2952 3828 : MPI communicator of the client 2953 3829 \end_layout 2954 3830 … … 2963 3839 \end_inset 2964 3840 2965 2966 \end_layout 2967 2968 \begin_layout Subsubsection* 2969 Description 3841 : split return MPI communicator 3842 \end_layout 3843 3844 \begin_layout Subsubsection* 3845 Description: 2970 3846 \end_layout 2971 3847 … … 3050 3926 \end_inset 3051 3927 3052 ) 3928 ): if local_comm MPI communicator is specified then it would be used for 3053 3929 internal MPI communication otherwise 3054 3930 \begin_inset Flex Code … … 3127 4003 \end_inset 3128 4004 3129 ) 4005 ): 3130 4006 \begin_inset Flex Code 3131 4007 status collapsed … … 3147 4023 \end_inset 3148 4024 3149 communicator would be split tedby XIOS.4025 communicator would be split by XIOS. 3150 4026 The split communicator is returned in 3151 4027 \begin_inset Flex Code … … 3230 4106 3231 4107 \begin_layout Itemize 3232 Otherwise 4108 Otherwise: if MPI was not initialized, OASIS will be initialized calling 3233 4109 3234 4110 \begin_inset Flex Code … … 3321 4197 3322 4198 \begin_layout Itemize 3323 Otherwise 4199 Otherwise: if MPI was not initialized, OASIS will be initialized calling 3324 4200 3325 4201 \begin_inset Flex Code … … 3388 4264 3389 4265 \begin_layout Subsubsection* 3390 Synopsis 4266 Synopsis: 3391 4267 \end_layout 3392 4268 … … 3396 4272 3397 4273 \begin_layout Subsubsection* 3398 Arguments 4274 Arguments: 3399 4275 \end_layout 3400 4276 … … 3404 4280 3405 4281 \begin_layout Subsubsection* 3406 Description 3407 \end_layout 3408 3409 \begin_layout Standard 3410 This call must be done at the end of the simulation for a succes full execution.4282 Description: 4283 \end_layout 4284 4285 \begin_layout Standard 4286 This call must be done at the end of the simulation for a successful execution. 3411 4287 It gives the end signal to the xios server pools to finish it execution. 3412 4288 If MPI has been initialize by XIOS the MPI_Finalize will be called. … … 3434 4310 New elements or group of elements can be added as child in the tree, attributes 3435 4311 of the elements can be set or query. 3436 The type of element actually ava laible are: context, axis, domain, grid,4312 The type of element actually available are: context, axis, domain, grid, 3437 4313 field, variable and file. 3438 4314 An element can be identified by a string or by an handle associated to 3439 4315 the type of the element. 3440 Root element (ex 4316 Root element (ex: 3441 4317 \begin_inset Quotes eld 3442 4318 \end_inset … … 3471 4347 3472 4348 \begin_layout Quotation 3473 TYPE( txios_element)4349 TYPE(xios_element) 3474 4350 \end_layout 3475 4351 … … 3539 4415 \end_inset 3540 4416 3541 , or the associated group (excepted for context) 4417 , or the associated group (excepted for context): 3542 4418 \begin_inset Quotes eld 3543 4419 \end_inset … … 3595 4471 3596 4472 \begin_layout Subsubsection* 3597 Synopsis 4473 Synopsis: 3598 4474 \end_layout 3599 4475 … … 3607 4483 3608 4484 \begin_layout LyX-Code 3609 TYPE( txios_element), INTENT(OUT):: handle3610 \end_layout 3611 3612 \begin_layout Standard 3613 wher aelement is one of the existing element or group of element.3614 \end_layout 3615 3616 \begin_layout Subsubsection* 3617 Arguments 4485 TYPE(xios_element), INTENT(OUT):: handle 4486 \end_layout 4487 4488 \begin_layout Standard 4489 where element is one of the existing element or group of element. 4490 \end_layout 4491 4492 \begin_layout Subsubsection* 4493 Arguments: 3618 4494 \end_layout 3619 4495 … … 3628 4504 \end_inset 3629 4505 3630 4506 : string identifier. 3631 4507 \end_layout 3632 4508 … … 3641 4517 \end_inset 3642 4518 3643 3644 \end_layout 3645 3646 \begin_layout Subsubsection* 3647 Description 4519 : element handle 4520 \end_layout 4521 4522 \begin_layout Subsubsection* 4523 Description: 3648 4524 \end_layout 3649 4525 … … 3659 4535 3660 4536 \begin_layout Subsubsection* 3661 Synopsis 4537 Synopsis: 3662 4538 \end_layout 3663 4539 … … 3671 4547 3672 4548 \begin_layout Standard 3673 wher aelement is one of the existing element or group of element.3674 \end_layout 3675 3676 \begin_layout Subsubsection* 3677 Arguments 4549 where element is one of the existing element or group of element. 4550 \end_layout 4551 4552 \begin_layout Subsubsection* 4553 Arguments: 3678 4554 \end_layout 3679 4555 … … 3688 4564 \end_inset 3689 4565 3690 3691 \end_layout 3692 3693 \begin_layout Subsubsection* 3694 Description 4566 : string identifier. 4567 \end_layout 4568 4569 \begin_layout Subsubsection* 4570 Description: 3695 4571 \end_layout 3696 4572 … … 3707 4583 3708 4584 \begin_layout Subsubsection* 3709 Synopsis 4585 Synopsis: 3710 4586 \end_layout 3711 4587 … … 3715 4591 3716 4592 \begin_layout LyX-Code 3717 TYPE( txios_element) , INTENT(IN) :: parent_handle3718 \end_layout 3719 3720 \begin_layout LyX-Code 3721 TYPE( txios_element) , INTENT(OUT):: child_handle4593 TYPE(xios_element) , INTENT(IN) :: parent_handle 4594 \end_layout 4595 4596 \begin_layout LyX-Code 4597 TYPE(xios_element) , INTENT(OUT):: child_handle 3722 4598 \end_layout 3723 4599 … … 3731 4607 3732 4608 \begin_layout Subsubsection* 3733 Arguments 4609 Arguments: 3734 4610 \end_layout 3735 4611 … … 3744 4620 \end_inset 3745 4621 3746 4622 : handle of the parent element. 3747 4623 \end_layout 3748 4624 … … 3757 4633 \end_inset 3758 4634 3759 4635 : handle of the child element. 3760 4636 \end_layout 3761 4637 … … 3770 4646 \end_inset 3771 4647 3772 3773 \end_layout 3774 3775 \begin_layout Subsubsection* 3776 Description 4648 : string identifier of the child. 4649 \end_layout 4650 4651 \begin_layout Subsubsection* 4652 Description: 3777 4653 \end_layout 3778 4654 … … 3782 4658 All group elements can contains child of the same kind, provided generic 3783 4659 inheritance. 3784 Some elements can contains child sof an other kind for a specific behaviour.4660 Some elements can contains children of an other kind for a specific behaviour. 3785 4661 File element may contains field_group, field, variable and variable_group 3786 4662 child elements. … … 3793 4669 3794 4670 \begin_layout Subsubsection* 3795 Synopsis 4671 Synopsis: 3796 4672 \end_layout 3797 4673 … … 3802 4678 3803 4679 \begin_layout LyX-Code 3804 TYPE( txios_element) , INTENT(IN) :: handle4680 TYPE(xios_element) , INTENT(IN) :: handle 3805 4681 \end_layout 3806 4682 … … 3823 4699 3824 4700 \begin_layout Subsubsection* 3825 Arguments 4701 Arguments: 3826 4702 \end_layout 3827 4703 … … 3836 4712 \end_inset 3837 4713 3838 4714 : element handle. 3839 4715 \end_layout 3840 4716 … … 3849 4725 \end_inset 3850 4726 3851 3852 \end_layout 3853 3854 \begin_layout Subsubsection* 3855 Description 4727 : return true if the attribute as a defined value. 4728 \end_layout 4729 4730 \begin_layout Subsubsection* 4731 Description: 3856 4732 \end_layout 3857 4733 … … 3860 4736 have a defined value. 3861 4737 The list of attributes and their type are described in a specific chapter 3862 of the document ion.4738 of the documentation. 3863 4739 3864 4740 \end_layout … … 3869 4745 3870 4746 \begin_layout Subsubsection* 3871 Synopsis 4747 Synopsis: 3872 4748 \end_layout 3873 4749 … … 3899 4775 3900 4776 \begin_layout Subsubsection* 3901 Arguments 4777 Arguments: 3902 4778 \end_layout 3903 4779 … … 3912 4788 \end_inset 3913 4789 3914 4790 : element identifier. 3915 4791 \end_layout 3916 4792 … … 3925 4801 \end_inset 3926 4802 3927 3928 \end_layout 3929 3930 \begin_layout Subsubsection* 3931 Description 4803 : return true if the attribute as a defined value. 4804 \end_layout 4805 4806 \begin_layout Subsubsection* 4807 Description: 3932 4808 \end_layout 3933 4809 … … 3936 4812 have a defined value. 3937 4813 The list of available attributes and their type are described in a specific 3938 chapter of the document ion.4814 chapter of the documentation. 3939 4815 3940 4816 \end_layout … … 3945 4821 3946 4822 \begin_layout Subsubsection* 3947 Synopsis 4823 Synopsis: 3948 4824 \end_layout 3949 4825 … … 3954 4830 3955 4831 \begin_layout LyX-Code 3956 TYPE( txios_element) , INTENT(IN) :: handle4832 TYPE(xios_element) , INTENT(IN) :: handle 3957 4833 \end_layout 3958 4834 … … 3976 4852 3977 4853 \begin_layout Subsubsection* 3978 Arguments 4854 Arguments: 3979 4855 \end_layout 3980 4856 … … 3989 4865 \end_inset 3990 4866 3991 4867 : element handle. 3992 4868 \end_layout 3993 4869 … … 4002 4878 \end_inset 4003 4879 4004 4005 \end_layout 4006 4007 \begin_layout Subsubsection* 4008 Description 4880 : value of the attribute to be set. 4881 \end_layout 4882 4883 \begin_layout Subsubsection* 4884 Description: 4009 4885 \end_layout 4010 4886 … … 4013 4889 by its handle. 4014 4890 The list of available attributes and their type are described in a specific 4015 chapter of the document ion.4891 chapter of the documentation. 4016 4892 4017 4893 \end_layout … … 4022 4898 4023 4899 \begin_layout Subsubsection* 4024 Synopsis 4900 Synopsis: 4025 4901 \end_layout 4026 4902 … … 4053 4929 4054 4930 \begin_layout Subsubsection* 4055 Arguments 4931 Arguments: 4056 4932 \end_layout 4057 4933 … … 4066 4942 \end_inset 4067 4943 4068 4944 : string identifier. 4069 4945 \end_layout 4070 4946 … … 4079 4955 \end_inset 4080 4956 4081 4082 \end_layout 4083 4084 \begin_layout Subsubsection* 4085 Description 4957 : value of the attribute to be set. 4958 \end_layout 4959 4960 \begin_layout Subsubsection* 4961 Description: 4086 4962 \end_layout 4087 4963 … … 4090 4966 by its string id. 4091 4967 The list of available attributes and their type are described in a specific 4092 chapter of the document ion.4968 chapter of the documentation. 4093 4969 \end_layout 4094 4970 … … 4098 4974 4099 4975 \begin_layout Subsubsection* 4100 Synopsis 4976 Synopsis: 4101 4977 \end_layout 4102 4978 … … 4107 4983 4108 4984 \begin_layout LyX-Code 4109 TYPE( txios_element) , INTENT(IN) :: handle4985 TYPE(xios_element) , INTENT(IN) :: handle 4110 4986 \end_layout 4111 4987 … … 4129 5005 4130 5006 \begin_layout Subsubsection* 4131 Arguments 5007 Arguments: 4132 5008 \end_layout 4133 5009 … … 4142 5018 \end_inset 4143 5019 4144 5020 : element handle. 4145 5021 \end_layout 4146 5022 … … 4155 5031 \end_inset 4156 5032 4157 4158 \end_layout 4159 4160 \begin_layout Subsubsection* 4161 Description 5033 : value of the attribute to be get. 5034 \end_layout 5035 5036 \begin_layout Subsubsection* 5037 Description: 4162 5038 \end_layout 4163 5039 … … 4167 5043 All attributes in the arguments list must be defined. 4168 5044 The list of available attributes and their type are described in a specific 4169 chapter of the document ion.5045 chapter of the documentation. 4170 5046 4171 5047 \end_layout … … 4176 5052 4177 5053 \begin_layout Subsubsection* 4178 Synopsis 5054 Synopsis: 4179 5055 \end_layout 4180 5056 … … 4206 5082 4207 5083 \begin_layout Subsubsection* 4208 Arguments 5084 Arguments: 4209 5085 \end_layout 4210 5086 … … 4219 5095 \end_inset 4220 5096 4221 5097 : element string identifier. 4222 5098 \end_layout 4223 5099 … … 4232 5108 \end_inset 4233 5109 4234 4235 \end_layout 4236 4237 \begin_layout Subsubsection* 4238 Description 5110 : value of the attribute to be get. 5111 \end_layout 5112 5113 \begin_layout Subsubsection* 5114 Description: 4239 5115 \end_layout 4240 5116 … … 4244 5120 All attributes in the arguments list must have a defined value. 4245 5121 The list of available attributes and their type are described in a specific 4246 chapter of the document ion.5122 chapter of the documentation. 4247 5123 \end_layout 4248 5124 4249 5125 \begin_layout Section* 4250 Interface relative to context manag ment5126 Interface relative to context management 4251 5127 \end_layout 4252 5128 … … 4256 5132 4257 5133 \begin_layout Subsubsection* 4258 Synopsis 5134 Synopsis: 4259 5135 \end_layout 4260 5136 … … 4272 5148 4273 5149 \begin_layout Subsubsection* 4274 Argument 5150 Argument: 4275 5151 \end_layout 4276 5152 … … 4285 5161 \end_inset 4286 5162 4287 5163 : context identifier 4288 5164 \end_layout 4289 5165 … … 4298 5174 \end_inset 4299 5175 4300 4301 \end_layout 4302 4303 \begin_layout Subsubsection* 4304 Description 5176 : MPI communicator of the context 5177 \end_layout 5178 5179 \begin_layout Subsubsection* 5180 Description: 4305 5181 \end_layout 4306 5182 … … 4348 5224 4349 5225 \begin_layout Subsubsection* 4350 Synopsis 5226 Synopsis: 4351 5227 \end_layout 4352 5228 … … 4356 5232 4357 5233 \begin_layout Subsubsection* 4358 Arguments 5234 Arguments: 4359 5235 \end_layout 4360 5236 … … 4364 5240 4365 5241 \begin_layout Subsubsection* 4366 Description 5242 Description: 4367 5243 \end_layout 4368 5244 … … 4388 5264 4389 5265 \begin_layout Subsubsection* 4390 Synopsis 5266 Synopsis: 4391 5267 \end_layout 4392 5268 … … 4396 5272 4397 5273 \begin_layout LyX-Code 4398 TYPE( txios_context),INTENT(IN) :: context_handle5274 TYPE(xios_context),INTENT(IN) :: context_handle 4399 5275 \end_layout 4400 5276 … … 4412 5288 4413 5289 \begin_layout Subsubsection* 4414 Arguments 5290 Arguments: 4415 5291 \end_layout 4416 5292 … … 4425 5301 \end_inset 4426 5302 4427 5303 : handle of the context 4428 5304 \end_layout 4429 5305 … … 4442 5318 \end_inset 4443 5319 4444 4445 \end_layout 4446 4447 \begin_layout Subsubsection* 4448 Description 5320 : string context identifier 5321 \end_layout 5322 5323 \begin_layout Subsubsection* 5324 Description: 4449 5325 \end_layout 4450 5326 … … 4461 5337 4462 5338 \begin_layout Subsubsection* 4463 Synopsis 5339 Synopsis: 4464 5340 \end_layout 4465 5341 … … 4469 5345 4470 5346 \begin_layout Subsubsection* 4471 Arguments 5347 Arguments: 4472 5348 \end_layout 4473 5349 … … 4477 5353 4478 5354 \begin_layout Subsubsection* 4479 Description 5355 Description: 4480 5356 \end_layout 4481 5357 … … 4486 5362 contacting servers,...) so this call is mandatory. 4487 5363 Any call related to the tree management definition done after will have 4488 an indefined effect. 4489 \end_layout 4490 4491 \begin_layout Subsection* 4492 Defining the time step of the context 4493 \end_layout 4494 4495 \begin_layout Subsubsection* 4496 Synopsis : 5364 an undefined effect. 5365 \end_layout 5366 5367 \begin_layout Section* 5368 Interface relative to calendar management 5369 \end_layout 5370 5371 \begin_layout Subsection* 5372 Creating the calendar 5373 \end_layout 5374 5375 \begin_layout Subsubsection* 5376 Synopsis: 5377 \end_layout 5378 5379 \begin_layout LyX-Code 5380 SUBROUTINE xios_define_calendar(type, timestep, start_date, time_origin, 5381 & 5382 \begin_inset Newline newline 5383 \end_inset 5384 5385 day_length, month_lengths, year_length, 5386 & 5387 \begin_inset Newline newline 5388 \end_inset 5389 5390 leap_year_month, leap_year_drift, & 5391 \begin_inset Newline newline 5392 \end_inset 5393 5394 leap_year_drift_offset) 5395 \begin_inset Newline newline 5396 \end_inset 5397 5398 CHARACTER(len = *), INTENT(IN) :: type 5399 \begin_inset Newline newline 5400 \end_inset 5401 5402 TYPE(xios_duration), OPTIONAL, INTENT(IN) :: timestep 5403 \begin_inset Newline newline 5404 \end_inset 5405 5406 TYPE(xios_date), OPTIONAL, INTENT(IN) :: start_date 5407 \begin_inset Newline newline 5408 \end_inset 5409 5410 TYPE(xios_date), OPTIONAL, INTENT(IN) :: time_origin 5411 \begin_inset Newline newline 5412 \end_inset 5413 5414 INTEGER, OPTIONAL, INTENT(IN) :: day_length 5415 \begin_inset Newline newline 5416 \end_inset 5417 5418 INTEGER, OPTIONAL, INTENT(IN) :: month_lengths(:) 5419 \begin_inset Newline newline 5420 \end_inset 5421 5422 INTEGER, OPTIONAL, INTENT(IN) :: year_length 5423 \begin_inset Newline newline 5424 \end_inset 5425 5426 DOUBLE PRECISION, OPTIONAL, INTENT(IN) :: leap_year_drift 5427 \begin_inset Newline newline 5428 \end_inset 5429 5430 DOUBLE PRECISION, OPTIONAL, INTENT(IN) :: leap_year_drift_offset 5431 \begin_inset Newline newline 5432 \end_inset 5433 5434 INTEGER, OPTIONAL, INTENT(IN) :: leap_year_month 5435 \end_layout 5436 5437 \begin_layout Subsubsection* 5438 Arguments: 5439 \end_layout 5440 5441 \begin_layout Itemize 5442 \begin_inset Flex Code 5443 status collapsed 5444 5445 \begin_layout Plain Layout 5446 type 5447 \end_layout 5448 5449 \end_inset 5450 5451 : the calendar type, one of 5452 \begin_inset Flex Code 5453 status collapsed 5454 5455 \begin_layout Plain Layout 5456 "Gregorian" 5457 \end_layout 5458 5459 \end_inset 5460 5461 , 5462 \begin_inset Flex Code 5463 status collapsed 5464 5465 \begin_layout Plain Layout 5466 "Julian" 5467 \end_layout 5468 5469 \end_inset 5470 5471 , 5472 \begin_inset Flex Code 5473 status collapsed 5474 5475 \begin_layout Plain Layout 5476 "D360" 5477 \end_layout 5478 5479 \end_inset 5480 5481 , 5482 \begin_inset Flex Code 5483 status collapsed 5484 5485 \begin_layout Plain Layout 5486 "AllLeap" 5487 \end_layout 5488 5489 \end_inset 5490 5491 , 5492 \begin_inset Flex Code 5493 status collapsed 5494 5495 \begin_layout Plain Layout 5496 "NoLeap" 5497 \end_layout 5498 5499 \end_inset 5500 5501 , 5502 \begin_inset Flex Code 5503 status collapsed 5504 5505 \begin_layout Plain Layout 5506 "user_defined" 5507 \end_layout 5508 5509 \end_inset 5510 5511 5512 \end_layout 5513 5514 \begin_layout Itemize 5515 \begin_inset Flex Code 5516 status collapsed 5517 5518 \begin_layout Plain Layout 5519 timestep 5520 \end_layout 5521 5522 \end_inset 5523 5524 : the time step of the simulation (optional, can be set later) 5525 \end_layout 5526 5527 \begin_layout Itemize 5528 \begin_inset Flex Code 5529 status collapsed 5530 5531 \begin_layout Plain Layout 5532 start_date 5533 \end_layout 5534 5535 \end_inset 5536 5537 : the start date of the simulation (optional, 5538 \begin_inset Flex Code 5539 status collapsed 5540 5541 \begin_layout Plain Layout 5542 xios_date(0000, 01, 01, 00, 00, 00) 5543 \end_layout 5544 5545 \end_inset 5546 5547 is used by default) 5548 \end_layout 5549 5550 \begin_layout Itemize 5551 \begin_inset Flex Code 5552 status collapsed 5553 5554 \begin_layout Plain Layout 5555 time_origin 5556 \end_layout 5557 5558 \end_inset 5559 5560 : the origin of the time axis (optional, 5561 \begin_inset Flex Code 5562 status collapsed 5563 5564 \begin_layout Plain Layout 5565 xios_date(0000, 01, 01, 00, 00, 00) 5566 \end_layout 5567 5568 \end_inset 5569 5570 is used by default) 5571 \end_layout 5572 5573 \begin_layout Itemize 5574 \begin_inset Flex Code 5575 status collapsed 5576 5577 \begin_layout Plain Layout 5578 day_length 5579 \end_layout 5580 5581 \end_inset 5582 5583 : the length of a day in seconds (mandatory when creating an user defined 5584 calendar, must not be set otherwise) 5585 \end_layout 5586 5587 \begin_layout Itemize 5588 \begin_inset Flex Code 5589 status collapsed 5590 5591 \begin_layout Plain Layout 5592 month_lengths 5593 \end_layout 5594 5595 \end_inset 5596 5597 : the length of each month of the year in days (either 5598 \begin_inset Flex Code 5599 status collapsed 5600 5601 \begin_layout Plain Layout 5602 month_lengths 5603 \end_layout 5604 5605 \end_inset 5606 5607 or 5608 \begin_inset Flex Code 5609 status collapsed 5610 5611 \begin_layout Plain Layout 5612 year_length 5613 \end_layout 5614 5615 \end_inset 5616 5617 must be set when creating an user defined calendar, must not be set otherwise) 5618 \end_layout 5619 5620 \begin_layout Itemize 5621 \begin_inset Flex Code 5622 status collapsed 5623 5624 \begin_layout Plain Layout 5625 year_length 5626 \end_layout 5627 5628 \end_inset 5629 5630 : the length of a year in seconds (either 5631 \begin_inset Flex Code 5632 status collapsed 5633 5634 \begin_layout Plain Layout 5635 month_lengths 5636 \end_layout 5637 5638 \end_inset 5639 5640 or 5641 \begin_inset Flex Code 5642 status collapsed 5643 5644 \begin_layout Plain Layout 5645 year_length 5646 \end_layout 5647 5648 \end_inset 5649 5650 must be set when creating an user defined calendar, must not be set otherwise) 5651 \end_layout 5652 5653 \begin_layout Itemize 5654 \begin_inset Flex Code 5655 status collapsed 5656 5657 \begin_layout Plain Layout 5658 leap_year_drift 5659 \end_layout 5660 5661 \end_inset 5662 5663 : the yearly drift between the user defined calendar and the astronomical 5664 calendar, expressed as a fraction of day (can optionally be set when creating 5665 an user defined calendar in which case 5666 \begin_inset Flex Code 5667 status collapsed 5668 5669 \begin_layout Plain Layout 5670 leap_year_month 5671 \end_layout 5672 5673 \end_inset 5674 5675 must be set too) 5676 \end_layout 5677 5678 \begin_layout Itemize 5679 \begin_inset Flex Code 5680 status collapsed 5681 5682 \begin_layout Plain Layout 5683 leap_year_drift_offset 5684 \end_layout 5685 5686 \end_inset 5687 5688 : the initial drift between the user defined calendar and the astronomical 5689 calendar at the time origin, expressed as a fraction of day (can optionally 5690 be set if 5691 \begin_inset Flex Code 5692 status collapsed 5693 5694 \begin_layout Plain Layout 5695 leap_year_drift 5696 \end_layout 5697 5698 \end_inset 5699 5700 and 5701 \begin_inset Flex Code 5702 status collapsed 5703 5704 \begin_layout Plain Layout 5705 leap_year_month 5706 \end_layout 5707 5708 \end_inset 5709 5710 are set) 5711 \end_layout 5712 5713 \begin_layout Itemize 5714 \begin_inset Flex Code 5715 status collapsed 5716 5717 \begin_layout Plain Layout 5718 leap_year_month 5719 \end_layout 5720 5721 \end_inset 5722 5723 : the month to which an extra day must be added in case of leap year (can 5724 optionally be set when creating an user defined calendar in which case 5725 5726 \begin_inset Flex Code 5727 status collapsed 5728 5729 \begin_layout Plain Layout 5730 leap_year_drift 5731 \end_layout 5732 5733 \end_inset 5734 5735 must be set too) 5736 \end_layout 5737 5738 \begin_layout Standard 5739 For a more detailed description of those arguments, see the description 5740 of the corresponding attributes in section 1.2 5741 \begin_inset Quotes eld 5742 \end_inset 5743 5744 Calendar attribute reference 5745 \begin_inset Quotes erd 5746 \end_inset 5747 5748 . 5749 \end_layout 5750 5751 \begin_layout Subsubsection* 5752 Description: 5753 \end_layout 5754 5755 \begin_layout Standard 5756 This subroutine creates the calendar for the current context. 5757 Note that the calendar is created once and for all, either from the XML 5758 configuration file or the Fortran interface. 5759 If it was not created from the configuration file, then this subroutine 5760 must be called once and only once before the context definition is closed. 5761 The calendar features can be used immediately after the calendar was created. 5762 \begin_inset Newline newline 5763 \end_inset 5764 5765 5766 \begin_inset Newline newline 5767 \end_inset 5768 5769 If an user defined calendar is created, the following arguments must also 5770 be provided: 5771 \begin_inset Flex Code 5772 status collapsed 5773 5774 \begin_layout Plain Layout 5775 day_length 5776 \end_layout 5777 5778 \end_inset 5779 5780 and either 5781 \begin_inset Flex Code 5782 status collapsed 5783 5784 \begin_layout Plain Layout 5785 month_lengths 5786 \end_layout 5787 5788 \end_inset 5789 5790 or 5791 \begin_inset Flex Code 5792 status collapsed 5793 5794 \begin_layout Plain Layout 5795 year_length 5796 \end_layout 5797 5798 \end_inset 5799 5800 . 5801 Optionally it is possible to configure the user defined calendar to have 5802 leap years. 5803 In this case, 5804 \begin_inset Flex Code 5805 status collapsed 5806 5807 \begin_layout Plain Layout 5808 leap_year_drift 5809 \end_layout 5810 5811 \end_inset 5812 5813 and 5814 \begin_inset Flex Code 5815 status collapsed 5816 5817 \begin_layout Plain Layout 5818 leap_year_month 5819 \end_layout 5820 5821 \end_inset 5822 5823 must also be provided and 5824 \begin_inset Flex Code 5825 status collapsed 5826 5827 \begin_layout Plain Layout 5828 leap_year_drift_offset 5829 \end_layout 5830 5831 \end_inset 5832 5833 might be used. 5834 \end_layout 5835 5836 \begin_layout Subsection* 5837 Accessing the calendar type of the current calendar 5838 \end_layout 5839 5840 \begin_layout Subsubsection* 5841 Synopsis: 5842 \end_layout 5843 5844 \begin_layout LyX-Code 5845 SUBROUTINE xios_get_calendar_type(calendar_type) 5846 \begin_inset Newline newline 5847 \end_inset 5848 5849 CHARACTER(len=*), INTENT(OUT) :: calendar_type 5850 \end_layout 5851 5852 \begin_layout Subsubsection* 5853 Arguments: 5854 \end_layout 5855 5856 \begin_layout Itemize 5857 \begin_inset Flex Code 5858 status collapsed 5859 5860 \begin_layout Plain Layout 5861 calendar_type 5862 \end_layout 5863 5864 \end_inset 5865 5866 : on output, the type of the calendar attached to the current context 5867 \end_layout 5868 5869 \begin_layout Subsubsection* 5870 Description: 5871 \end_layout 5872 5873 \begin_layout Standard 5874 This subroutine gets the calendar type associated to the current context. 5875 It will raise an error if used before the calendar was created. 5876 \end_layout 5877 5878 \begin_layout Subsection* 5879 Accessing and defining the time step of the current calendar 5880 \end_layout 5881 5882 \begin_layout Subsubsection* 5883 Synopsis: 5884 \end_layout 5885 5886 \begin_layout LyX-Code 5887 SUBROUTINE xios_get_timestep(timestep) 5888 \begin_inset Newline newline 5889 \end_inset 5890 5891 TYPE(xios_duration), INTENT(OUT) :: timestep 5892 \end_layout 5893 5894 \begin_layout Standard 5895 and 4497 5896 \end_layout 4498 5897 4499 5898 \begin_layout LyX-Code 4500 5899 SUBROUTINE xios_set_timestep(timestep) 4501 \ end_layout4502 4503 \begin_layout LyX-Code 4504 TYPE( txios_time),INTENT(IN) :: timestep4505 \end_layout 4506 4507 \begin_layout Subsubsection* 4508 Arguments 5900 \begin_inset Newline newline 5901 \end_inset 5902 5903 TYPE(xios_duration), INTENT(IN) :: timestep 5904 \end_layout 5905 5906 \begin_layout Subsubsection* 5907 Arguments: 4509 5908 \end_layout 4510 5909 … … 4519 5918 \end_inset 4520 5919 4521 : timestep of the model using time units 4522 \end_layout 4523 4524 \begin_layout Subsubsection* 4525 Description : 4526 \end_layout 4527 4528 \begin_layout Standard 4529 This subroutine fix the timestep of the current context. 4530 Must be call before closing context definition. 5920 : a duration corresponding to the time step of the simulation 5921 \end_layout 5922 5923 \begin_layout Subsubsection* 5924 Description: 5925 \end_layout 5926 5927 \begin_layout Standard 5928 Those subroutines respectively gets and sets the time step associated to 5929 the calendar of the current context. 5930 Note that the time step must always be set before the context definition 5931 is closed and that an error will be raised if the getter subroutine is 5932 used before the time step is defined. 5933 \end_layout 5934 5935 \begin_layout Subsection* 5936 Accessing and defining the start date of the current calendar 5937 \end_layout 5938 5939 \begin_layout Subsubsection* 5940 Synopsis: 5941 \end_layout 5942 5943 \begin_layout LyX-Code 5944 SUBROUTINE xios_get_start_date(start_date) 5945 \begin_inset Newline newline 5946 \end_inset 5947 5948 TYPE(xios_date), INTENT(OUT) :: start_date 5949 \end_layout 5950 5951 \begin_layout Standard 5952 and 5953 \end_layout 5954 5955 \begin_layout LyX-Code 5956 SUBROUTINE xios_set_start_date(start_date) 5957 \begin_inset Newline newline 5958 \end_inset 5959 5960 TYPE(xios_date), INTENT(IN) :: start_date 5961 \end_layout 5962 5963 \begin_layout Subsubsection* 5964 Arguments: 5965 \end_layout 5966 5967 \begin_layout Itemize 5968 \begin_inset Flex Code 5969 status collapsed 5970 5971 \begin_layout Plain Layout 5972 start_date 5973 \end_layout 5974 5975 \end_inset 5976 5977 : a date corresponding to the beginning of the simulation 5978 \end_layout 5979 5980 \begin_layout Subsubsection* 5981 Description: 5982 \end_layout 5983 5984 \begin_layout Standard 5985 Those subroutines respectively gets and sets the start date associated to 5986 the calendar of the current context. 5987 They must not be used before the calendar was created. 5988 \end_layout 5989 5990 \begin_layout Subsection* 5991 Accessing and defining the time origin of the current calendar 5992 \end_layout 5993 5994 \begin_layout Subsubsection* 5995 Synopsis: 5996 \end_layout 5997 5998 \begin_layout LyX-Code 5999 SUBROUTINE xios_get_time_origin(time_origin) 6000 \begin_inset Newline newline 6001 \end_inset 6002 6003 TYPE(xios_date), INTENT(OUT) :: time_origin 6004 \end_layout 6005 6006 \begin_layout Standard 6007 and 6008 \end_layout 6009 6010 \begin_layout LyX-Code 6011 SUBROUTINE xios_set_time_date(time_origin) 6012 \begin_inset Newline newline 6013 \end_inset 6014 6015 TYPE(xios_date), INTENT(IN) :: time_origin 6016 \end_layout 6017 6018 \begin_layout Subsubsection* 6019 Arguments: 6020 \end_layout 6021 6022 \begin_layout Itemize 6023 \begin_inset Flex Code 6024 status collapsed 6025 6026 \begin_layout Plain Layout 6027 start_date 6028 \end_layout 6029 6030 \end_inset 6031 6032 : a date corresponding to the origin of the time axis 6033 \end_layout 6034 6035 \begin_layout Subsubsection* 6036 Description: 6037 \end_layout 6038 6039 \begin_layout Standard 6040 Those subroutines respectively gets and sets the origin of time associated 6041 to the calendar of the current context. 6042 They must not be used before the calendar was created. 6043 \end_layout 6044 6045 \begin_layout Subsection* 6046 Updating the current date of the current calendar 6047 \end_layout 6048 6049 \begin_layout Subsubsection* 6050 Synopsis: 6051 \end_layout 6052 6053 \begin_layout LyX-Code 6054 SUBROUTINE xios_update_calendar(step) 6055 \begin_inset Newline newline 6056 \end_inset 6057 6058 INTEGER, INTENT(IN) :: step 6059 \end_layout 6060 6061 \begin_layout Subsubsection* 6062 Arguments: 6063 \end_layout 6064 6065 \begin_layout Itemize 6066 \begin_inset Flex Code 6067 status collapsed 6068 6069 \begin_layout Plain Layout 6070 step 6071 \end_layout 6072 6073 \end_inset 6074 6075 : the current iteration number 6076 \end_layout 6077 6078 \begin_layout Subsubsection* 6079 Description: 6080 \end_layout 6081 6082 \begin_layout Standard 6083 This subroutine sets the current date associated to the calendar of the 6084 current context based on the current iteration number: 6085 \begin_inset Formula $current\_date=start\_date+step\times timestep$ 6086 \end_inset 6087 6088 . 6089 It must not be used before the calendar was created. 6090 \end_layout 6091 6092 \begin_layout Subsection* 6093 Accessing the current date of the current calendar 6094 \end_layout 6095 6096 \begin_layout Subsubsection* 6097 Synopsis: 6098 \end_layout 6099 6100 \begin_layout LyX-Code 6101 SUBROUTINE xios_get_current_date(current_date) 6102 \begin_inset Newline newline 6103 \end_inset 6104 6105 TYPE(xios_date), INTENT(OUT) :: current_date 6106 \end_layout 6107 6108 \begin_layout Subsubsection* 6109 Arguments: 6110 \end_layout 6111 6112 \begin_layout Itemize 6113 \begin_inset Flex Code 6114 status collapsed 6115 6116 \begin_layout Plain Layout 6117 current_date 6118 \end_layout 6119 6120 \end_inset 6121 6122 : on output, the current date 6123 \end_layout 6124 6125 \begin_layout Subsubsection* 6126 Description: 6127 \end_layout 6128 6129 \begin_layout Standard 6130 This subroutine gets the current date associated to the calendar of the 6131 current context. 6132 It must not be used before the calendar was created. 6133 \end_layout 6134 6135 \begin_layout Subsection* 6136 Accessing the year length of the current calendar 6137 \end_layout 6138 6139 \begin_layout Subsubsection* 6140 Synopsis: 6141 \end_layout 6142 6143 \begin_layout LyX-Code 6144 INTEGER FUNCTION xios_get_year_length_in_seconds(year) 6145 \begin_inset Newline newline 6146 \end_inset 6147 6148 INTEGER, INTENT(IN) :: year 6149 \end_layout 6150 6151 \begin_layout Subsubsection* 6152 Arguments: 6153 \end_layout 6154 6155 \begin_layout Itemize 6156 \begin_inset Flex Code 6157 status collapsed 6158 6159 \begin_layout Plain Layout 6160 year 6161 \end_layout 6162 6163 \end_inset 6164 6165 : the year whose length is requested 6166 \end_layout 6167 6168 \begin_layout Subsubsection* 6169 Description: 6170 \end_layout 6171 6172 \begin_layout Standard 6173 This function returns the duration in seconds of the specified year, taking 6174 leap years into account based on the calendar of the current context. 6175 It must not be used before the calendar was created. 6176 \end_layout 6177 6178 \begin_layout Subsection* 6179 Accessing the day length of the current calendar 6180 \end_layout 6181 6182 \begin_layout Subsubsection* 6183 Synopsis: 6184 \end_layout 6185 6186 \begin_layout LyX-Code 6187 INTEGER FUNCTION xios_get_day_length_in_seconds() 6188 \end_layout 6189 6190 \begin_layout Subsubsection* 6191 Arguments: None 6192 \end_layout 6193 6194 \begin_layout Subsubsection* 6195 Description: 6196 \end_layout 6197 6198 \begin_layout Standard 6199 This function returns the duration in seconds of a day, based on the calendar 6200 of the current context. 6201 It must not be used before the calendar was created. 6202 \end_layout 6203 6204 \begin_layout Section* 6205 Interface relative to duration handling 6206 \end_layout 6207 6208 \begin_layout Subsection* 6209 Duration constants 6210 \end_layout 6211 6212 \begin_layout Standard 6213 Some duration constants are available to ease duration handling: 6214 \end_layout 6215 6216 \begin_layout Itemize 6217 \begin_inset Flex Code 6218 status collapsed 6219 6220 \begin_layout Plain Layout 6221 xios_year 6222 \end_layout 6223 6224 \end_inset 6225 6226 6227 \end_layout 6228 6229 \begin_layout Itemize 6230 \begin_inset Flex Code 6231 status collapsed 6232 6233 \begin_layout Plain Layout 6234 xios_month 6235 \end_layout 6236 6237 \end_inset 6238 6239 6240 \end_layout 6241 6242 \begin_layout Itemize 6243 \begin_inset Flex Code 6244 status collapsed 6245 6246 \begin_layout Plain Layout 6247 xios_day 6248 \end_layout 6249 6250 \end_inset 6251 6252 6253 \end_layout 6254 6255 \begin_layout Itemize 6256 \begin_inset Flex Code 6257 status collapsed 6258 6259 \begin_layout Plain Layout 6260 xios_hour 6261 \end_layout 6262 6263 \end_inset 6264 6265 6266 \end_layout 6267 6268 \begin_layout Itemize 6269 \begin_inset Flex Code 6270 status collapsed 6271 6272 \begin_layout Plain Layout 6273 xios_minute 6274 \end_layout 6275 6276 \end_inset 6277 6278 6279 \end_layout 6280 6281 \begin_layout Itemize 6282 \begin_inset Flex Code 6283 status collapsed 6284 6285 \begin_layout Plain Layout 6286 xios_second 6287 \end_layout 6288 6289 \end_inset 6290 6291 6292 \end_layout 6293 6294 \begin_layout Itemize 6295 \begin_inset Flex Code 6296 status collapsed 6297 6298 \begin_layout Plain Layout 6299 xios_timestep 6300 \end_layout 6301 6302 \end_inset 6303 6304 6305 \end_layout 6306 6307 \begin_layout Subsection* 6308 Arithmetic operations on durations 6309 \end_layout 6310 6311 \begin_layout Standard 6312 The following arithmetic operations on durations are available: 6313 \end_layout 6314 6315 \begin_layout Itemize 6316 Addition: 6317 \begin_inset Flex Code 6318 status collapsed 6319 6320 \begin_layout Plain Layout 6321 xios_duration = xios_duration + xios_duration 6322 \end_layout 6323 6324 \end_inset 6325 6326 6327 \end_layout 6328 6329 \begin_layout Itemize 6330 Subtraction: 6331 \begin_inset Flex Code 6332 status collapsed 6333 6334 \begin_layout Plain Layout 6335 xios_duration = xios_duration - xios_duration 6336 \end_layout 6337 6338 \end_inset 6339 6340 6341 \end_layout 6342 6343 \begin_layout Itemize 6344 Multiplication by a scalar value: 6345 \begin_inset Flex Code 6346 status collapsed 6347 6348 \begin_layout Plain Layout 6349 xios_duration = scalar * xios_duration 6350 \end_layout 6351 6352 \end_inset 6353 6354 or 6355 \begin_inset Flex Code 6356 status collapsed 6357 6358 \begin_layout Plain Layout 6359 xios_duration = xios_duration * scalar 6360 \end_layout 6361 6362 \end_inset 6363 6364 6365 \end_layout 6366 6367 \begin_layout Itemize 6368 Negation: 6369 \begin_inset Flex Code 6370 status collapsed 6371 6372 \begin_layout Plain Layout 6373 xios_duration = -xios_duration 6374 \end_layout 6375 6376 \end_inset 6377 6378 6379 \end_layout 6380 6381 \begin_layout Subsection* 6382 Comparison operations on durations 6383 \end_layout 6384 6385 \begin_layout Standard 6386 The following comparison operations on durations are available: 6387 \end_layout 6388 6389 \begin_layout Itemize 6390 Equality: 6391 \begin_inset Flex Code 6392 status collapsed 6393 6394 \begin_layout Plain Layout 6395 LOGICAL = xios_duration == xios_duration 6396 \end_layout 6397 6398 \end_inset 6399 6400 6401 \end_layout 6402 6403 \begin_layout Itemize 6404 Inequality: 6405 \begin_inset Flex Code 6406 status collapsed 6407 6408 \begin_layout Plain Layout 6409 LOGICAL = xios_duration /= xios_duration 6410 \end_layout 6411 6412 \end_inset 6413 6414 6415 \end_layout 6416 6417 \begin_layout Section* 6418 Interface relative to date handling 6419 \end_layout 6420 6421 \begin_layout Subsection* 6422 Arithmetic operations on dates 6423 \end_layout 6424 6425 \begin_layout Standard 6426 The following arithmetic operations on dates are available: 6427 \end_layout 6428 6429 \begin_layout Itemize 6430 Addition of a duration: 6431 \begin_inset Flex Code 6432 status collapsed 6433 6434 \begin_layout Plain Layout 6435 xios_date = xios_date + xios_duration 6436 \end_layout 6437 6438 \end_inset 6439 6440 6441 \end_layout 6442 6443 \begin_layout Itemize 6444 Subtraction of a duration: 6445 \begin_inset Flex Code 6446 status collapsed 6447 6448 \begin_layout Plain Layout 6449 xios_date = xios_date - xios_duration 6450 \end_layout 6451 6452 \end_inset 6453 6454 6455 \end_layout 6456 6457 \begin_layout Itemize 6458 Subtraction of two dates: 6459 \begin_inset Flex Code 6460 status collapsed 6461 6462 \begin_layout Plain Layout 6463 xios_duration = xios_date - xios_date 6464 \end_layout 6465 6466 \end_inset 6467 6468 6469 \end_layout 6470 6471 \begin_layout Subsection* 6472 Comparison operations on dates 6473 \end_layout 6474 6475 \begin_layout Standard 6476 The following comparison operations on dates are available: 6477 \end_layout 6478 6479 \begin_layout Itemize 6480 Equality: 6481 \begin_inset Flex Code 6482 status collapsed 6483 6484 \begin_layout Plain Layout 6485 LOGICAL = xios_date == xios_date 6486 \end_layout 6487 6488 \end_inset 6489 6490 6491 \end_layout 6492 6493 \begin_layout Itemize 6494 Inequality: 6495 \begin_inset Flex Code 6496 status collapsed 6497 6498 \begin_layout Plain Layout 6499 LOGICAL = xios_date /= xios_date 6500 \end_layout 6501 6502 \end_inset 6503 6504 6505 \end_layout 6506 6507 \begin_layout Itemize 6508 Less than: 6509 \begin_inset Flex Code 6510 status collapsed 6511 6512 \begin_layout Plain Layout 6513 LOGICAL = xios_date < xios_date 6514 \end_layout 6515 6516 \end_inset 6517 6518 6519 \end_layout 6520 6521 \begin_layout Itemize 6522 Less or equal: 6523 \begin_inset Flex Code 6524 status collapsed 6525 6526 \begin_layout Plain Layout 6527 LOGICAL = xios_date <= xios_date 6528 \end_layout 6529 6530 \end_inset 6531 6532 6533 \end_layout 6534 6535 \begin_layout Itemize 6536 Greater than: 6537 \begin_inset Flex Code 6538 status collapsed 6539 6540 \begin_layout Plain Layout 6541 LOGICAL = xios_date > xios_date 6542 \end_layout 6543 6544 \end_inset 6545 6546 6547 \end_layout 6548 6549 \begin_layout Itemize 6550 Greater or equal: 6551 \begin_inset Flex Code 6552 status collapsed 6553 6554 \begin_layout Plain Layout 6555 LOGICAL = xios_date >= xios_date 6556 \end_layout 6557 6558 \end_inset 6559 6560 6561 \end_layout 6562 6563 \begin_layout Subsection* 6564 Converting a date to a number of seconds since the time origin 6565 \end_layout 6566 6567 \begin_layout Subsubsection* 6568 Synopsis: 6569 \end_layout 6570 6571 \begin_layout LyX-Code 6572 FUNCTION INTEGER(kind = 8) xios_date_convert_to_seconds(date) 6573 \begin_inset Newline newline 6574 \end_inset 6575 6576 TYPE(xios_date), INTENT(IN) :: date 6577 \end_layout 6578 6579 \begin_layout Subsubsection* 6580 Arguments: 6581 \end_layout 6582 6583 \begin_layout Itemize 6584 \begin_inset Flex Code 6585 status collapsed 6586 6587 \begin_layout Plain Layout 6588 date 6589 \end_layout 6590 6591 \end_inset 6592 6593 : the date to convert 6594 \end_layout 6595 6596 \begin_layout Subsubsection* 6597 Description: 6598 \end_layout 6599 6600 \begin_layout Standard 6601 This function returns the number of seconds since the time origin for the 6602 specified date, based on the calendar of the current context. 6603 It must not be used before the calendar was created. 6604 \end_layout 6605 6606 \begin_layout Subsection* 6607 Converting a date to a number of seconds since the beginning of the year 6608 \end_layout 6609 6610 \begin_layout Subsubsection* 6611 Synopsis: 6612 \end_layout 6613 6614 \begin_layout LyX-Code 6615 FUNCTION INTEGER xios(date_get_second_of_year)(date) 6616 \begin_inset Newline newline 6617 \end_inset 6618 6619 TYPE(xios_date), INTENT(IN) :: date 6620 \end_layout 6621 6622 \begin_layout Subsubsection* 6623 Arguments: 6624 \end_layout 6625 6626 \begin_layout Itemize 6627 \begin_inset Flex Code 6628 status collapsed 6629 6630 \begin_layout Plain Layout 6631 date 6632 \end_layout 6633 6634 \end_inset 6635 6636 : the date to convert 6637 \end_layout 6638 6639 \begin_layout Subsubsection* 6640 Description: 6641 \end_layout 6642 6643 \begin_layout Standard 6644 This function returns the number of seconds since the beginning of the year 6645 for the specified date, based on the calendar of the current context. 6646 It must not be used before the calendar was created. 6647 \end_layout 6648 6649 \begin_layout Subsection* 6650 Converting a date to a number of days since the beginning of the year 6651 \end_layout 6652 6653 \begin_layout Subsubsection* 6654 Synopsis: 6655 \end_layout 6656 6657 \begin_layout LyX-Code 6658 FUNCTION DOUBLE_PRECISION xios_date_get_day_of_year(date) 6659 \begin_inset Newline newline 6660 \end_inset 6661 6662 TYPE(xios_date), INTENT(IN) :: date 6663 \end_layout 6664 6665 \begin_layout Subsubsection* 6666 Arguments: 6667 \end_layout 6668 6669 \begin_layout Itemize 6670 \begin_inset Flex Code 6671 status collapsed 6672 6673 \begin_layout Plain Layout 6674 date 6675 \end_layout 6676 6677 \end_inset 6678 6679 : the date to convert 6680 \end_layout 6681 6682 \begin_layout Subsubsection* 6683 Description: 6684 \end_layout 6685 6686 \begin_layout Standard 6687 This function returns the number of days since the beginning of the year 6688 for the specified date, based on the calendar of the current context. 6689 It must not be used before the calendar was created. 6690 \end_layout 6691 6692 \begin_layout Subsection* 6693 Converting a date to a fraction of the current year 6694 \end_layout 6695 6696 \begin_layout Subsubsection* 6697 Synopsis: 6698 \end_layout 6699 6700 \begin_layout LyX-Code 6701 FUNCTION DOUBLE_PRECISION xios_date_get_fraction_of_year(date) 6702 \begin_inset Newline newline 6703 \end_inset 6704 6705 TYPE(xios_date), INTENT(IN) :: date 6706 \end_layout 6707 6708 \begin_layout Subsubsection* 6709 Arguments: 6710 \end_layout 6711 6712 \begin_layout Itemize 6713 \begin_inset Flex Code 6714 status collapsed 6715 6716 \begin_layout Plain Layout 6717 date 6718 \end_layout 6719 6720 \end_inset 6721 6722 : the date to convert 6723 \end_layout 6724 6725 \begin_layout Subsubsection* 6726 Description: 6727 \end_layout 6728 6729 \begin_layout Standard 6730 This function returns the fraction of year corresponding to the specified 6731 date, based on the calendar of the current context. 6732 It must not be used before the calendar was created. 6733 \end_layout 6734 6735 \begin_layout Subsection* 6736 Converting a date to a number of seconds since the beginning of the day 6737 \end_layout 6738 6739 \begin_layout Subsubsection* 6740 Synopsis: 6741 \end_layout 6742 6743 \begin_layout LyX-Code 6744 FUNCTION INTEGER xios(date_get_second_of_day)(date) 6745 \begin_inset Newline newline 6746 \end_inset 6747 6748 TYPE(xios_date), INTENT(IN) :: date 6749 \end_layout 6750 6751 \begin_layout Subsubsection* 6752 Arguments: 6753 \end_layout 6754 6755 \begin_layout Itemize 6756 \begin_inset Flex Code 6757 status collapsed 6758 6759 \begin_layout Plain Layout 6760 date 6761 \end_layout 6762 6763 \end_inset 6764 6765 : the date to convert 6766 \end_layout 6767 6768 \begin_layout Subsubsection* 6769 Description: 6770 \end_layout 6771 6772 \begin_layout Standard 6773 This function returns the number of seconds since the beginning of the day 6774 for the specified date, based on the calendar of the current context. 6775 It must not be used before the calendar was created. 6776 \end_layout 6777 6778 \begin_layout Subsection* 6779 Converting a date to a fraction of the current day 6780 \end_layout 6781 6782 \begin_layout Subsubsection* 6783 Synopsis: 6784 \end_layout 6785 6786 \begin_layout LyX-Code 6787 FUNCTION DOUBLE_PRECISION xios_date_get_fraction_of_day(date) 6788 \begin_inset Newline newline 6789 \end_inset 6790 6791 TYPE(xios_date), INTENT(IN) :: date 6792 \end_layout 6793 6794 \begin_layout Subsubsection* 6795 Arguments: 6796 \end_layout 6797 6798 \begin_layout Itemize 6799 \begin_inset Flex Code 6800 status collapsed 6801 6802 \begin_layout Plain Layout 6803 date 6804 \end_layout 6805 6806 \end_inset 6807 6808 : the date to convert 6809 \end_layout 6810 6811 \begin_layout Subsubsection* 6812 Description: 6813 \end_layout 6814 6815 \begin_layout Standard 6816 This function returns the fraction of day corresponding to the specified 6817 date, based on the calendar of the current context. 6818 It must not be used before the calendar was created. 4531 6819 \end_layout 4532 6820
Note: See TracChangeset
for help on using the changeset viewer.