├── .github └── PULL_REQUEST_TEMPLATE ├── .gitignore ├── .nojekyll ├── .travis.yml ├── CMakeLists.txt ├── CONTRIBUTING.md ├── ChangeLog ├── ChangeLog_template ├── LICENSE.TXT ├── README.md ├── config ├── cesm │ ├── config_archive.xml │ ├── config_files.xml │ ├── config_grids.xml │ ├── config_inputdata.xml │ └── machines │ │ ├── Depends.babbageKnc │ │ ├── Depends.bluewaters │ │ ├── Depends.corip1 │ │ ├── Depends.cray │ │ ├── Depends.gnu │ │ ├── Depends.intel │ │ ├── Depends.intel14 │ │ ├── Depends.intelmic │ │ ├── Depends.intelmic14 │ │ ├── Depends.mira │ │ ├── Depends.nag │ │ ├── README │ │ ├── config_batch.xml │ │ ├── config_compilers.xml │ │ ├── config_machines.xml │ │ ├── config_pio.xml │ │ ├── nag_mpi_argument.txt │ │ ├── template.case.run │ │ ├── template.case.test │ │ ├── template.st_archive │ │ └── userdefined_laptop_template │ │ ├── README.md │ │ ├── config_compilers.xml │ │ ├── config_machines.xml │ │ └── config_pes.xml ├── config_headers.xml ├── config_tests.xml ├── e3sm │ ├── allactive │ │ ├── config_compsets.xml │ │ ├── config_pesall.xml │ │ └── testlist_allactive.xml │ ├── config_archive.xml │ ├── config_files.xml │ ├── config_grids.xml │ ├── config_inputdata.xml │ ├── machines │ │ ├── Depends.cetus │ │ ├── Depends.cray │ │ ├── Depends.gnu │ │ ├── Depends.intel │ │ ├── Depends.mira │ │ ├── Depends.nag │ │ ├── Depends.summit.ibm │ │ ├── Depends.summit.pgiacc │ │ ├── Depends.summitdev.ibm │ │ ├── Depends.summitdev.pgiacc │ │ ├── Depends.theta.intel │ │ ├── Depends.titan.cray │ │ ├── Depends.titan.intel │ │ ├── Depends.titan.pgi │ │ ├── Depends.titan.pgiacc │ │ ├── README │ │ ├── config_batch.xml │ │ ├── config_compilers.xml │ │ ├── config_machines.xml │ │ ├── config_pio.xml │ │ ├── syslog.anvil │ │ ├── syslog.cetus │ │ ├── syslog.cori-haswell │ │ ├── syslog.cori-knl │ │ ├── syslog.edison │ │ ├── syslog.mira │ │ ├── syslog.noop │ │ ├── syslog.summit │ │ ├── syslog.theta │ │ ├── syslog.titan │ │ ├── template.case.run │ │ ├── template.case.run.sh │ │ ├── template.case.test │ │ ├── template.ocn_diagnostics │ │ ├── template.st_archive │ │ ├── template.timeseries │ │ └── userdefined_laptop_template │ │ │ ├── README.md │ │ │ ├── config_compilers.xml │ │ │ ├── config_machines.xml │ │ │ └── config_pes.xml │ ├── testmods_dirs │ │ └── allactive │ │ │ ├── force_netcdf_pio │ │ │ └── shell_commands │ │ │ ├── mach │ │ │ └── pet │ │ │ │ └── shell_commands │ │ │ ├── mach_mods │ │ │ └── shell_commands │ │ │ └── v1cmip6 │ │ │ ├── README │ │ │ ├── shell_commands │ │ │ ├── user_nl_cam │ │ │ └── user_nl_clm │ ├── tests.py │ └── usermods_dirs │ │ └── README └── xml_schemas │ ├── cimeteststatus.xsd │ ├── config_archive.xsd │ ├── config_batch.xsd │ ├── config_compilers_v2.xsd │ ├── config_compsets.xsd │ ├── config_grids_v2.xsd │ ├── config_inputdata.xsd │ ├── config_machines.xsd │ ├── config_machines_template.xml │ ├── config_pes.xsd │ ├── entry_id.xsd │ ├── entry_id_base.xsd │ ├── entry_id_base_version3.xsd │ ├── entry_id_namelist.xsd │ ├── entry_id_version3.xsd │ ├── env_archive.xsd │ ├── env_batch.xsd │ ├── env_entry_id.xsd │ ├── env_mach_pes.xsd │ ├── env_mach_specific.xsd │ └── testlist.xsd ├── doc ├── .gitignore ├── Makefile ├── README ├── source │ ├── Tools_user │ │ └── index.rst.template │ ├── _static │ ├── build_cpl │ │ ├── adding-components.rst │ │ ├── index.rst │ │ └── introduction.rst │ ├── conf.py │ ├── data_models │ │ ├── data-atm.rst │ │ ├── data-lnd.rst │ │ ├── data-model-science.rst │ │ ├── data-ocean.rst │ │ ├── data-river.rst │ │ ├── data-seaice.rst │ │ ├── data-wave.rst │ │ ├── design-details.rst │ │ ├── index.rst │ │ ├── input-namelists.rst │ │ ├── input-streams.rst │ │ └── introduction.rst │ ├── driver_cpl │ │ ├── bit-for-bit-flag.rst │ │ ├── budgets.rst │ │ ├── cplug-02.1-figx1.jpg │ │ ├── design.rst │ │ ├── driver_threading_control.rst │ │ ├── grids.rst │ │ ├── history-and-restarts.rst │ │ ├── implementation.rst │ │ ├── index.rst │ │ ├── initialization-and-restart.rst │ │ ├── introduction.rst │ │ ├── multi-instance.rst │ │ ├── namelist-overview.rst │ │ └── time-management.rst │ ├── glossary │ │ └── index.rst │ ├── index.rst │ ├── misc_tools │ │ ├── ect.rst │ │ ├── index.rst │ │ └── load-balancing-tool.rst │ ├── users_guide │ │ ├── building-a-case.rst │ │ ├── cime-change-namelist.rst │ │ ├── cime-config.rst │ │ ├── cime-dir.rst │ │ ├── cime-internals.rst │ │ ├── cloning-a-case.rst │ │ ├── compsets.rst │ │ ├── create-a-case.rst │ │ ├── grids.rst │ │ ├── index.rst │ │ ├── introduction-and-overview.rst │ │ ├── machine.rst │ │ ├── multi-instance.rst │ │ ├── pes-threads.rst │ │ ├── porting-cime.rst │ │ ├── running-a-case.rst │ │ ├── setting-up-a-case.rst │ │ ├── testing.rst │ │ ├── timers.rst │ │ ├── troubleshooting.rst │ │ ├── unit_testing.rst │ │ └── workflows.rst │ ├── what_cime │ │ └── index.rst │ └── xml_files │ │ ├── atmosphere.rst │ │ ├── cesm.rst │ │ ├── common.rst │ │ ├── components.rst │ │ ├── drivers.rst │ │ ├── e3sm.rst │ │ ├── esp.rst │ │ ├── index.rst │ │ ├── land.rst │ │ ├── landice.rst │ │ ├── ocean.rst │ │ ├── river.rst │ │ ├── seaice.rst │ │ └── wave.rst ├── tools_autodoc.cfg └── tools_autodoc.py ├── index.html ├── scripts ├── Tools │ ├── Makefile │ ├── __init__.py │ ├── advanced-py-prof │ ├── archive_metadata │ ├── bless_test_results │ ├── case.build │ ├── case.cmpgen_namelists │ ├── case.qstatus │ ├── case.setup │ ├── case.submit │ ├── case_diff │ ├── check_case │ ├── check_input_data │ ├── check_lockedfiles │ ├── cime_bisect │ ├── code_checker │ ├── compare_namelists │ ├── compare_test_results │ ├── component_compare_baseline │ ├── component_compare_copy │ ├── component_compare_test │ ├── component_generate_baseline │ ├── concat_daily_hist.csh │ ├── cs.status │ ├── e3sm_check_env │ ├── e3sm_cime_merge │ ├── e3sm_cime_split │ ├── getTiming │ ├── jenkins_generic_job │ ├── jenkins_script │ ├── list_e3sm_tests │ ├── mkDepends │ ├── mkSrcfiles │ ├── normalize_cases │ ├── pelayout │ ├── preview_namelists │ ├── preview_run │ ├── save_provenance │ ├── simple-py-prof │ ├── simple_compare │ ├── standard_script_setup.py │ ├── testreporter.py │ ├── wait_for_tests │ ├── xmlchange │ ├── xmlconvertors │ │ ├── config_pes_converter.py │ │ ├── convert-grid-v1-to-v2 │ │ └── grid_xml_converter.py │ ├── xmlquery │ └── xmltestentry ├── climate_reproducibility │ ├── README.md │ └── requirements.txt ├── create_clone ├── create_newcase ├── create_test ├── data_assimilation │ └── da_no_data_mod.sh ├── fortran_unit_testing │ ├── Examples │ │ ├── circle_area │ │ │ ├── src │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── circle.F90 │ │ │ └── tests │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── CTest │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── test_driver.F90 │ │ │ │ └── pFUnit │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── test_circle.pf │ │ ├── interpolate_1d │ │ │ ├── src │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── interpolate_1d.F90 │ │ │ └── tests │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── CTest │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── test_driver.F90 │ │ │ │ └── pFUnit │ │ │ │ ├── CMakeLists.txt │ │ │ │ └── test_interpolate_point.pf │ │ └── test_list.xml │ ├── README │ ├── python │ │ ├── .gitignore │ │ ├── printer.py │ │ ├── test_xml_test_list.py │ │ └── xml_test_list.py │ └── run_tests.py ├── lib │ ├── CIME │ │ ├── BuildTools │ │ │ ├── __init__.py │ │ │ ├── cmakemacroswriter.py │ │ │ ├── configure.py │ │ │ ├── macroconditiontree.py │ │ │ ├── macrowriterbase.py │ │ │ ├── makemacroswriter.py │ │ │ ├── possiblevalues.py │ │ │ └── valuesetting.py │ │ ├── Servers │ │ │ ├── __init__.py │ │ │ ├── ftp.py │ │ │ ├── generic_server.py │ │ │ ├── gftp.py │ │ │ ├── svn.py │ │ │ └── wget.py │ │ ├── SystemTests │ │ │ ├── README │ │ │ ├── __init__.py │ │ │ ├── dae.py │ │ │ ├── eri.py │ │ │ ├── erio.py │ │ │ ├── erp.py │ │ │ ├── err.py │ │ │ ├── erri.py │ │ │ ├── ers.py │ │ │ ├── ers2.py │ │ │ ├── ert.py │ │ │ ├── funit.py │ │ │ ├── homme.py │ │ │ ├── icp.py │ │ │ ├── irt.py │ │ │ ├── ldsta.py │ │ │ ├── mcc.py │ │ │ ├── mvk.py │ │ │ ├── nck.py │ │ │ ├── ncr.py │ │ │ ├── nodefail.py │ │ │ ├── pea.py │ │ │ ├── pem.py │ │ │ ├── pet.py │ │ │ ├── pfs.py │ │ │ ├── pgn.py │ │ │ ├── pre.py │ │ │ ├── rep.py │ │ │ ├── restart_tests.py │ │ │ ├── seq.py │ │ │ ├── sms.py │ │ │ ├── system_tests_common.py │ │ │ ├── system_tests_compare_two.py │ │ │ ├── test_utils │ │ │ │ ├── __init__.py │ │ │ │ └── user_nl_utils.py │ │ │ └── tsc.py │ │ ├── XML │ │ │ ├── __init__.py │ │ │ ├── archive.py │ │ │ ├── archive_base.py │ │ │ ├── batch.py │ │ │ ├── compilerblock.py │ │ │ ├── compilers.py │ │ │ ├── component.py │ │ │ ├── compsets.py │ │ │ ├── entry_id.py │ │ │ ├── env_archive.py │ │ │ ├── env_base.py │ │ │ ├── env_batch.py │ │ │ ├── env_build.py │ │ │ ├── env_case.py │ │ │ ├── env_mach_pes.py │ │ │ ├── env_mach_specific.py │ │ │ ├── env_run.py │ │ │ ├── env_test.py │ │ │ ├── files.py │ │ │ ├── generic_xml.py │ │ │ ├── grids.py │ │ │ ├── headers.py │ │ │ ├── inputdata.py │ │ │ ├── machines.py │ │ │ ├── namelist_definition.py │ │ │ ├── pes.py │ │ │ ├── pio.py │ │ │ ├── standard_module_setup.py │ │ │ ├── test_reporter.py │ │ │ ├── testlist.py │ │ │ ├── tests.py │ │ │ └── testspec.py │ │ ├── __init__.py │ │ ├── aprun.py │ │ ├── bless_test_results.py │ │ ├── build.py │ │ ├── buildlib.py │ │ ├── buildnml.py │ │ ├── case │ │ │ ├── README │ │ │ ├── __init__.py │ │ │ ├── case.py │ │ │ ├── case_clone.py │ │ │ ├── case_cmpgen_namelists.py │ │ │ ├── case_run.py │ │ │ ├── case_setup.py │ │ │ ├── case_st_archive.py │ │ │ ├── case_submit.py │ │ │ ├── case_test.py │ │ │ ├── check_input_data.py │ │ │ ├── check_lockedfiles.py │ │ │ └── preview_namelists.py │ │ ├── code_checker.py │ │ ├── compare_namelists.py │ │ ├── compare_test_results.py │ │ ├── cs_status.py │ │ ├── cs_status_creator.py │ │ ├── date.py │ │ ├── get_timing.py │ │ ├── hist_utils.py │ │ ├── locked_files.py │ │ ├── namelist.py │ │ ├── nmlgen.py │ │ ├── provenance.py │ │ ├── simple_compare.py │ │ ├── test_scheduler.py │ │ ├── test_status.py │ │ ├── test_utils.py │ │ ├── tests │ │ │ ├── README │ │ │ ├── SystemTests │ │ │ │ ├── __init__.py │ │ │ │ ├── test_system_tests_compare_two.py │ │ │ │ ├── test_system_tests_compare_two_link_to_case2_output.py │ │ │ │ └── test_utils │ │ │ │ │ ├── __init__.py │ │ │ │ │ └── test_user_nl_utils.py │ │ │ ├── __init__.py │ │ │ ├── case_fake.py │ │ │ ├── test_case_fake.py │ │ │ ├── test_cs_status.py │ │ │ ├── test_user_mod_support.py │ │ │ └── test_utils.py │ │ ├── user_mod_support.py │ │ ├── utils.py │ │ └── wait_for_tests.py │ ├── cs.status.template │ ├── cs.submit.template │ ├── e3sm_cime_mgmt.py │ ├── get_tests.py │ ├── jenkins_generic_job.py │ ├── six.py │ ├── six_additions.py │ └── testreporter.template ├── query_config ├── query_testlists ├── testlist_cmeps.xml └── tests │ ├── CMakeLists.txt │ ├── CTestConfig.cmake │ ├── cpl.hi1.nc.test │ ├── cpl.hi2.nc.test │ ├── cpl.log.failmemleak.gz │ ├── cpl.log.passmemleak.gz │ ├── list_tests │ ├── scripts_regression_tests.py │ ├── user_mods_test1 │ ├── include_user_mods │ ├── user_nl_comp │ └── user_nl_cpl │ ├── user_mods_test2 │ ├── SourceMods │ │ └── src.drv │ │ │ └── somefile.F90 │ └── user_nl_cpl │ └── user_mods_test3 │ └── shell_commands ├── src ├── CMake │ ├── .gitignore │ ├── CESM_utils.cmake │ ├── CIME_initial_setup.cmake │ ├── CIME_utils.cmake │ ├── ChangeLog │ ├── Compilers.cmake │ ├── FindpFUnit.cmake │ ├── LICENSE │ ├── README.md │ ├── Sourcelist_utils.cmake │ ├── TryCSizeOf.f90 │ ├── TryMPIIO.f90 │ ├── TryMPIMod.f90 │ ├── TryMPISERIAL.f90 │ ├── TryPnetcdf_inc.f90 │ ├── TryPnetcdf_mod.f90 │ ├── genf90_utils.cmake │ ├── mpiexec.cmake │ └── pFUnit_utils.cmake ├── build_scripts │ ├── buildlib.csm_share │ ├── buildlib.gptl │ ├── buildlib.internal_components │ ├── buildlib.mct │ ├── buildlib.mpi-serial │ └── buildlib.pio ├── components │ ├── data_comps │ │ ├── datm │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_archive.xml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_datm.xml │ │ │ │ └── user_nl_datm │ │ │ ├── doc │ │ │ │ ├── SOM.pdf │ │ │ │ ├── bookinfo.xml │ │ │ │ ├── datacomps.xml │ │ │ │ ├── intro.xml │ │ │ │ ├── rundocbook.csh │ │ │ │ ├── streams.xml │ │ │ │ └── ug.xml │ │ │ ├── mct │ │ │ │ ├── atm_comp_mct.F90 │ │ │ │ ├── datm_comp_mod.F90 │ │ │ │ └── datm_shr_mod.F90 │ │ │ └── nuopc │ │ │ │ ├── atm_comp_nuopc.F90 │ │ │ │ ├── datm_comp_mod.F90 │ │ │ │ └── datm_shr_mod.F90 │ │ ├── desp │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_desp.xml │ │ │ │ └── user_nl_desp │ │ │ ├── desp_comp_mod.F90 │ │ │ ├── esp_utils.F90 │ │ │ └── mct │ │ │ │ └── esp_comp_mct.F90 │ │ ├── dice │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_archive.xml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_dice.xml │ │ │ │ └── user_nl_dice │ │ │ ├── mct │ │ │ │ ├── dice_comp_mod.F90 │ │ │ │ ├── dice_flux_atmice_mod.F90 │ │ │ │ ├── dice_shr_mod.F90 │ │ │ │ └── ice_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ ├── dice_comp_mod.F90 │ │ │ │ ├── dice_flux_atmice_mod.F90 │ │ │ │ ├── dice_shr_mod.F90 │ │ │ │ └── ice_comp_nuopc.F90 │ │ ├── dlnd │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_archive.xml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_dlnd.xml │ │ │ │ └── user_nl_dlnd │ │ │ ├── mct │ │ │ │ ├── dlnd_comp_mod.F90 │ │ │ │ ├── dlnd_shr_mod.F90 │ │ │ │ └── lnd_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ ├── dlnd_comp_mod.F90 │ │ │ │ ├── dlnd_shr_mod.F90 │ │ │ │ └── lnd_comp_nuopc.F90 │ │ ├── docn │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_archive.xml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_docn.xml │ │ │ │ └── user_nl_docn │ │ │ ├── mct │ │ │ │ ├── docn_comp_mod.F90 │ │ │ │ ├── docn_shr_mod.F90 │ │ │ │ └── ocn_comp_mct.F90 │ │ │ ├── nuopc │ │ │ │ ├── docn_comp_mod.F90 │ │ │ │ ├── docn_shr_mod.F90 │ │ │ │ └── ocn_comp_nuopc.F90 │ │ │ └── tools │ │ │ │ └── pop_som_frc │ │ │ │ ├── README │ │ │ │ ├── SOM.doc │ │ │ │ ├── SOM.pdf │ │ │ │ ├── pop_frc.csh │ │ │ │ ├── pop_frc_mlann.ncl │ │ │ │ ├── pop_frc_mlt.ncl │ │ │ │ ├── pop_interp.ncl │ │ │ │ ├── read_from_mss.csh │ │ │ │ └── read_from_mss_month.csh │ │ ├── drof │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ ├── config_archive.xml │ │ │ │ ├── config_component.xml │ │ │ │ ├── namelist_definition_drof.xml │ │ │ │ └── user_nl_drof │ │ │ ├── mct │ │ │ │ ├── drof_comp_mod.F90 │ │ │ │ ├── drof_shr_mod.F90 │ │ │ │ └── rof_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ ├── drof_comp_mod.F90 │ │ │ │ ├── drof_shr_mod.F90 │ │ │ │ └── rof_comp_nuopc.F90 │ │ ├── dshr_nuopc │ │ │ └── dshr_nuopc_mod.F90 │ │ └── dwav │ │ │ ├── README │ │ │ ├── bld │ │ │ └── README │ │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ ├── config_archive.xml │ │ │ ├── config_component.xml │ │ │ ├── namelist_definition_dwav.xml │ │ │ └── user_nl_dwav │ │ │ ├── mct │ │ │ ├── dwav_comp_mod.F90 │ │ │ ├── dwav_shr_mod.F90 │ │ │ └── wav_comp_mct.F90 │ │ │ └── nuopc │ │ │ ├── dwav_comp_mod.F90 │ │ │ ├── dwav_shr_mod.F90 │ │ │ └── wav_comp_nuopc.F90 │ ├── stub_comps │ │ ├── satm │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── atm_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── atm_comp_nuopc.F90 │ │ ├── sesp │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ └── mct │ │ │ │ └── esp_comp_mct.F90 │ │ ├── sglc │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── glc_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── glc_comp_nuopc.F90 │ │ ├── sice │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── ice_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── ice_comp_nuopc.F90 │ │ ├── slnd │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── lnd_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── lnd_comp_nuopc.F90 │ │ ├── socn │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── ocn_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── ocn_comp_nuopc.F90 │ │ ├── srof │ │ │ ├── cime_config │ │ │ │ ├── buildlib │ │ │ │ ├── buildnml │ │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ │ └── rof_comp_mct.F90 │ │ │ └── nuopc │ │ │ │ └── rof_comp_nuopc.F90 │ │ └── swav │ │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ │ ├── mct │ │ │ └── wav_comp_mct.F90 │ │ │ └── nuopc │ │ │ └── wav_comp_nuopc.F90 │ └── xcpl_comps │ │ ├── xatm │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── atm_comp_mct.F90 │ │ └── nuopc │ │ │ └── atm_comp_nuopc.F90 │ │ ├── xglc │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── glc_comp_mct.F90 │ │ └── nuopc │ │ │ └── glc_comp_nuopc.F90 │ │ ├── xice │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── ice_comp_mct.F90 │ │ └── nuopc │ │ │ └── ice_comp_nuopc.F90 │ │ ├── xlnd │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── lnd_comp_mct.F90 │ │ └── nuopc │ │ │ └── lnd_comp_nuopc.F90 │ │ ├── xocn │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── ocn_comp_mct.F90 │ │ └── nuopc │ │ │ └── ocn_comp_nuopc.F90 │ │ ├── xrof │ │ ├── cime_config │ │ │ ├── buildlib │ │ │ ├── buildnml │ │ │ └── config_component.xml │ │ ├── mct │ │ │ └── rof_comp_mct.F90 │ │ └── nuopc │ │ │ └── rof_comp_nuopc.F90 │ │ ├── xshare │ │ ├── mct │ │ │ ├── dead_data_mod.F90 │ │ │ ├── dead_mct_mod.F90 │ │ │ └── dead_mod.F90 │ │ └── nuopc │ │ │ └── dead_nuopc_mod.F90 │ │ └── xwav │ │ ├── cime_config │ │ ├── buildlib │ │ ├── buildnml │ │ └── config_component.xml │ │ ├── mct │ │ └── wav_comp_mct.F90 │ │ └── nuopc │ │ └── wav_comp_nuopc.F90 ├── drivers │ ├── mct │ │ ├── cime_config │ │ │ ├── buildexe │ │ │ ├── buildnml │ │ │ ├── config_archive.xml │ │ │ ├── config_component.xml │ │ │ ├── config_component_cesm.xml │ │ │ ├── config_component_e3sm.xml │ │ │ ├── config_compsets.xml │ │ │ ├── config_pes.xml │ │ │ ├── namelist_definition_drv.xml │ │ │ ├── namelist_definition_drv_flds.xml │ │ │ ├── namelist_definition_modelio.xml │ │ │ ├── testdefs │ │ │ │ ├── testlist_drv.xml │ │ │ │ └── testmods_dirs │ │ │ │ │ └── drv │ │ │ │ │ ├── 5steps │ │ │ │ │ └── shell_commands │ │ │ │ │ ├── default │ │ │ │ │ └── shell_commands │ │ │ │ │ ├── som │ │ │ │ │ └── shell_commands │ │ │ │ │ └── y100k │ │ │ │ │ ├── README │ │ │ │ │ └── shell_commands │ │ │ └── user_nl_cpl │ │ ├── main │ │ │ ├── CMakeLists.txt │ │ │ ├── cime_comp_mod.F90 │ │ │ ├── cime_driver.F90 │ │ │ ├── component_mod.F90 │ │ │ ├── component_type_mod.F90 │ │ │ ├── cplcomp_exchange_mod.F90 │ │ │ ├── map_glc2lnd_mod.F90 │ │ │ ├── map_lnd2glc_mod.F90 │ │ │ ├── map_lnd2rof_irrig_mod.F90 │ │ │ ├── mrg_mod.F90 │ │ │ ├── prep_aoflux_mod.F90 │ │ │ ├── prep_atm_mod.F90 │ │ │ ├── prep_glc_mod.F90 │ │ │ ├── prep_ice_mod.F90 │ │ │ ├── prep_lnd_mod.F90 │ │ │ ├── prep_ocn_mod.F90 │ │ │ ├── prep_rof_mod.F90 │ │ │ ├── prep_wav_mod.F90 │ │ │ ├── seq_diag_mct.F90 │ │ │ ├── seq_domain_mct.F90 │ │ │ ├── seq_flux_mct.F90 │ │ │ ├── seq_frac_mct.F90 │ │ │ ├── seq_hist_mod.F90 │ │ │ ├── seq_io_mod.F90 │ │ │ ├── seq_map_mod.F90 │ │ │ ├── seq_map_type_mod.F90 │ │ │ ├── seq_rest_mod.F90 │ │ │ └── t_driver_timers_mod.F90 │ │ ├── shr │ │ │ ├── CMakeLists.txt │ │ │ ├── glc_elevclass_mod.F90 │ │ │ ├── seq_cdata_mod.F90 │ │ │ ├── seq_comm_mct.F90 │ │ │ ├── seq_drydep_mod.F90 │ │ │ ├── seq_flds_mod.F90 │ │ │ ├── seq_infodata_mod.F90 │ │ │ ├── seq_io_read_mod.F90 │ │ │ ├── seq_pauseresume_mod.F90 │ │ │ ├── seq_timemgr_mod.F90 │ │ │ ├── shr_carma_mod.F90 │ │ │ ├── shr_expr_parser_mod.F90 │ │ │ ├── shr_fire_emis_mod.F90 │ │ │ ├── shr_megan_mod.F90 │ │ │ └── shr_ndep_mod.F90 │ │ └── unit_test │ │ │ ├── CMakeLists.txt │ │ │ ├── avect_wrapper_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_avect_wrapper.pf │ │ │ ├── check_fields_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_check_fields.pf │ │ │ ├── glc_elevclass_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_glc_elevclass.pf │ │ │ ├── map_glc2lnd_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_map_glc2lnd.pf │ │ │ ├── map_lnd2rof_irrig_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_map_lnd2rof_irrig.pf │ │ │ ├── seq_map_test │ │ │ ├── CMakeLists.txt │ │ │ └── test_seq_map.pf │ │ │ ├── stubs │ │ │ ├── CMakeLists.txt │ │ │ └── seq_timemgr_mod.F90 │ │ │ └── utils │ │ │ ├── CMakeLists.txt │ │ │ ├── avect_wrapper_mod.F90 │ │ │ ├── create_mapper_mod.F90 │ │ │ ├── mct_wrapper_mod.F90 │ │ │ └── simple_map_mod.F90 │ ├── moab │ │ ├── cime_config │ │ │ ├── buildexe │ │ │ ├── buildnml │ │ │ ├── config_archive.xml │ │ │ ├── config_component.xml │ │ │ ├── config_component_cesm.xml │ │ │ ├── config_component_e3sm.xml │ │ │ ├── config_compsets.xml │ │ │ ├── config_pes.xml │ │ │ ├── namelist_definition_drv.xml │ │ │ ├── namelist_definition_drv_flds.xml │ │ │ ├── namelist_definition_modelio.xml │ │ │ └── user_nl_cpl │ │ ├── main │ │ │ ├── CMakeLists.txt │ │ │ ├── cime_comp_mod.F90 │ │ │ ├── cime_driver.F90 │ │ │ ├── component_mod.F90 │ │ │ ├── component_type_mod.F90 │ │ │ ├── cplcomp_exchange_mod.F90 │ │ │ ├── map_glc2lnd_mod.F90 │ │ │ ├── map_lnd2glc_mod.F90 │ │ │ ├── map_lnd2rof_irrig_mod.F90 │ │ │ ├── mrg_mod.F90 │ │ │ ├── prep_aoflux_mod.F90 │ │ │ ├── prep_atm_mod.F90 │ │ │ ├── prep_glc_mod.F90 │ │ │ ├── prep_ice_mod.F90 │ │ │ ├── prep_lnd_mod.F90 │ │ │ ├── prep_ocn_mod.F90 │ │ │ ├── prep_rof_mod.F90 │ │ │ ├── prep_wav_mod.F90 │ │ │ ├── seq_diag_mct.F90 │ │ │ ├── seq_domain_mct.F90 │ │ │ ├── seq_flux_mct.F90 │ │ │ ├── seq_frac_mct.F90 │ │ │ ├── seq_hist_mod.F90 │ │ │ ├── seq_io_mod.F90 │ │ │ ├── seq_map_mod.F90 │ │ │ ├── seq_map_type_mod.F90 │ │ │ ├── seq_rest_mod.F90 │ │ │ └── t_driver_timers_mod.F90 │ │ └── shr │ │ │ ├── CMakeLists.txt │ │ │ ├── glc_elevclass_mod.F90 │ │ │ ├── seq_cdata_mod.F90 │ │ │ ├── seq_comm_mct.F90 │ │ │ ├── seq_drydep_mod.F90 │ │ │ ├── seq_flds_mod.F90 │ │ │ ├── seq_infodata_mod.F90 │ │ │ ├── seq_io_read_mod.F90 │ │ │ ├── seq_timemgr_mod.F90 │ │ │ ├── shr_carma_mod.F90 │ │ │ ├── shr_expr_parser_mod.F90 │ │ │ ├── shr_fire_emis_mod.F90 │ │ │ ├── shr_megan_mod.F90 │ │ │ └── shr_ndep_mod.F90 │ └── nuopc │ │ ├── cime_config │ │ ├── buildexe │ │ ├── buildnml │ │ ├── config_archive.xml │ │ ├── config_component.xml │ │ ├── config_component_cesm.xml │ │ ├── config_component_e3sm.xml │ │ ├── config_compsets.xml │ │ ├── config_pes.xml │ │ ├── fd.yaml │ │ ├── namelist_definition_drv.xml │ │ ├── namelist_definition_drv_flds.xml │ │ ├── namelist_definition_modelio.xml │ │ ├── testdefs │ │ │ ├── testlist_drv.xml │ │ │ └── testmods_dirs │ │ │ │ └── drv │ │ │ │ ├── 5steps │ │ │ │ └── shell_commands │ │ │ │ ├── default │ │ │ │ └── shell_commands │ │ │ │ ├── glcnec10 │ │ │ │ ├── include_user_mods │ │ │ │ └── shell_commands │ │ │ │ └── som │ │ │ │ └── shell_commands │ │ └── user_nl_cpl │ │ ├── cime_driver │ │ ├── ensemble_driver.F90 │ │ ├── esm.F90 │ │ ├── esmApp.F90 │ │ ├── t_driver_timers_mod.F90 │ │ └── util.F90 │ │ ├── cime_flds │ │ ├── esmDict.F90 │ │ ├── esmFlds.F90 │ │ ├── glc_elevclass_mod.F90 │ │ ├── seq_drydep_mod.F90 │ │ ├── shr_carma_mod.F90 │ │ ├── shr_fire_emis_mod.F90 │ │ ├── shr_flds_mod.F90 │ │ ├── shr_megan_mod.F90 │ │ └── shr_ndep_mod.F90 │ │ ├── mediator │ │ ├── ESMFConvenienceMacros.h │ │ ├── ESMFVersionDefine.h │ │ ├── med.F90 │ │ ├── med_connectors_mod.F90 │ │ ├── med_fraction_mod.F90 │ │ ├── med_infodata_mod.F90 │ │ ├── med_internalstate_mod.F90 │ │ ├── med_io_mod.F90 │ │ ├── med_map_mod.F90 │ │ ├── med_merge_mod.F90 │ │ ├── med_phases_aofluxes_mod.F90 │ │ ├── med_phases_history_mod.F90 │ │ ├── med_phases_mod.F90 │ │ ├── med_phases_ocnalb_mod.F90 │ │ ├── med_phases_prep_atm_mod.F90 │ │ ├── med_phases_prep_glc_mod.F90 │ │ ├── med_phases_prep_ice_mod.F90 │ │ ├── med_phases_prep_lnd_mod.F90 │ │ ├── med_phases_prep_ocn_mod.F90 │ │ ├── med_phases_prep_rof_mod.F90 │ │ ├── med_phases_prep_wav_mod.F90 │ │ └── med_phases_restart_mod.F90 │ │ └── shr │ │ ├── CMakeLists.txt │ │ ├── med_constants_mod.F90 │ │ ├── seq_comm_mct.F90 │ │ ├── seq_timemgr_mod.F90 │ │ ├── shr_expr_parser_mod.F90 │ │ ├── shr_nuopc_fldList_mod.F90 │ │ ├── shr_nuopc_grid_mod.F90 │ │ ├── shr_nuopc_methods_mod.F90 │ │ ├── shr_nuopc_scalars_mod.F90 │ │ ├── shr_nuopc_time_mod.F90 │ │ └── shr_nuopc_utils_mod.F90 ├── externals │ ├── genf90 │ │ ├── ChangeLog │ │ └── genf90.pl │ ├── mct │ │ ├── .gitignore │ │ ├── COPYRIGHT │ │ ├── Makefile │ │ ├── Makefile.conf.in │ │ ├── README │ │ ├── aclocal.m4 │ │ ├── benchmarks │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── RouterTestDis.F90 │ │ │ ├── RouterTestOvr.F90 │ │ │ ├── T42.8pC │ │ │ ├── T42.8pR │ │ │ ├── gx1.8pC │ │ │ ├── gx1.8pR │ │ │ └── importBench.F90 │ │ ├── config.h.in │ │ ├── configure │ │ ├── configure.ac │ │ ├── doc │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── README │ │ │ ├── coupler.bib │ │ │ ├── mct_APIs.tex │ │ │ └── texsrc │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ └── SRCS_tex.mk │ │ ├── examples │ │ │ ├── Makefile │ │ │ ├── README │ │ │ ├── climate_concur1 │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── README │ │ │ │ ├── coupler.F90 │ │ │ │ ├── master.F90 │ │ │ │ └── model.F90 │ │ │ ├── climate_sequen1 │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── README │ │ │ │ ├── TS1.dat │ │ │ │ ├── coupler.F90 │ │ │ │ ├── dst.rc │ │ │ │ ├── dstmodel.F90 │ │ │ │ ├── master.F90 │ │ │ │ ├── mutils.F90 │ │ │ │ ├── src.rc │ │ │ │ └── srcmodel.F90 │ │ │ └── simple │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── README │ │ │ │ ├── script.babyblue │ │ │ │ ├── twocmp.con.F90 │ │ │ │ ├── twocmp.seq.F90 │ │ │ │ ├── twocmp.seqNB.F90 │ │ │ │ └── twocmp.seqUnvn.F90 │ │ ├── install-sh │ │ ├── m4 │ │ │ ├── README │ │ │ ├── acx_mpi.m4 │ │ │ ├── ax_fc_version.m4 │ │ │ └── fortran.m4 │ │ ├── mct │ │ │ ├── Makefile │ │ │ ├── README │ │ │ ├── m_Accumulator.F90 │ │ │ ├── m_AccumulatorComms.F90 │ │ │ ├── m_AttrVect.F90 │ │ │ ├── m_AttrVectComms.F90 │ │ │ ├── m_AttrVectReduce.F90 │ │ │ ├── m_ConvertMaps.F90 │ │ │ ├── m_ExchangeMaps.F90 │ │ │ ├── m_GeneralGrid.F90 │ │ │ ├── m_GeneralGridComms.F90 │ │ │ ├── m_GlobalMap.F90 │ │ │ ├── m_GlobalSegMap.F90 │ │ │ ├── m_GlobalSegMapComms.F90 │ │ │ ├── m_GlobalToLocal.F90 │ │ │ ├── m_MCTWorld.F90 │ │ │ ├── m_MatAttrVectMul.F90 │ │ │ ├── m_Merge.F90 │ │ │ ├── m_Navigator.F90 │ │ │ ├── m_Rearranger.F90 │ │ │ ├── m_Router.F90 │ │ │ ├── m_SPMDutils.F90 │ │ │ ├── m_SparseMatrix.F90 │ │ │ ├── m_SparseMatrixComms.F90 │ │ │ ├── m_SparseMatrixDecomp.F90 │ │ │ ├── m_SparseMatrixPlus.F90 │ │ │ ├── m_SparseMatrixToMaps.F90 │ │ │ ├── m_SpatialIntegral.F90 │ │ │ ├── m_SpatialIntegralV.F90 │ │ │ └── m_Transfer.F90 │ │ ├── mkinstalldirs │ │ ├── mpeu │ │ │ ├── Makefile │ │ │ ├── README │ │ │ ├── assertmpeu.H │ │ │ ├── get_zeits.c │ │ │ ├── m_FcComms.F90 │ │ │ ├── m_FileResolv.F90 │ │ │ ├── m_Filename.F90 │ │ │ ├── m_IndexBin_char.F90 │ │ │ ├── m_IndexBin_integer.F90 │ │ │ ├── m_IndexBin_logical.F90 │ │ │ ├── m_List.F90 │ │ │ ├── m_MergeSorts.F90 │ │ │ ├── m_Permuter.F90 │ │ │ ├── m_SortingTools.F90 │ │ │ ├── m_StrTemplate.F90 │ │ │ ├── m_String.F90 │ │ │ ├── m_StringLinkedList.F90 │ │ │ ├── m_TraceBack.F90 │ │ │ ├── m_chars.F90 │ │ │ ├── m_die.F90 │ │ │ ├── m_dropdead.F90 │ │ │ ├── m_flow.F90 │ │ │ ├── m_inpak90.F90 │ │ │ ├── m_ioutil.F90 │ │ │ ├── m_mall.F90 │ │ │ ├── m_mpif.F90 │ │ │ ├── m_mpif90.F90 │ │ │ ├── m_mpout.F90 │ │ │ ├── m_rankMerge.F90 │ │ │ ├── m_realkinds.F90 │ │ │ ├── m_stdio.F90 │ │ │ └── m_zeit.F90 │ │ ├── mpi-serial │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── Makefile.conf.in │ │ │ ├── README │ │ │ ├── aclocal.m4 │ │ │ ├── cart.c │ │ │ ├── collective.c │ │ │ ├── comm.c │ │ │ ├── config.h.in │ │ │ ├── configure │ │ │ ├── configure.in │ │ │ ├── copy.c │ │ │ ├── error.c │ │ │ ├── fort.F90 │ │ │ ├── getcount.c │ │ │ ├── group.c │ │ │ ├── handles.c │ │ │ ├── ic_merge.c │ │ │ ├── info.c │ │ │ ├── list.c │ │ │ ├── list.h │ │ │ ├── listP.h │ │ │ ├── listops.h │ │ │ ├── m4 │ │ │ │ ├── README │ │ │ │ └── ax_fc_version.m4 │ │ │ ├── mpi.c │ │ │ ├── mpi.h │ │ │ ├── mpiP.h │ │ │ ├── mpif.F90 │ │ │ ├── mpif.h │ │ │ ├── op.c │ │ │ ├── pack.c │ │ │ ├── probe.c │ │ │ ├── protify.awk │ │ │ ├── recv.c │ │ │ ├── req.c │ │ │ ├── send.c │ │ │ ├── tests │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── ctest.c │ │ │ │ ├── ctest_old.c │ │ │ │ ├── ftest.F90 │ │ │ │ ├── ftest_internal.F90 │ │ │ │ └── ftest_old.F90 │ │ │ ├── time.c │ │ │ ├── type.c │ │ │ ├── type.h │ │ │ └── type_const.c │ │ ├── protex │ │ │ └── protex │ │ ├── testsystem │ │ │ ├── Makefile │ │ │ └── testall │ │ │ │ ├── .gitignore │ │ │ │ ├── Makefile │ │ │ │ ├── ReadSparseMatrixAsc.F90 │ │ │ │ ├── UNTESTED │ │ │ │ ├── ccm.F90 │ │ │ │ ├── convertPOPT.F90 │ │ │ │ ├── convertgauss.F90 │ │ │ │ ├── cpl.F90 │ │ │ │ ├── job.ut-all.jaguar │ │ │ │ ├── m_ACTEST.F90 │ │ │ │ ├── m_AVTEST.F90 │ │ │ │ ├── m_GGRIDTEST.F90 │ │ │ │ ├── m_GMAPTEST.F90 │ │ │ │ ├── m_GSMAPTEST.F90 │ │ │ │ ├── m_MCTWORLDTEST.F90 │ │ │ │ ├── m_ROUTERTEST.F90 │ │ │ │ ├── m_SMATTEST.F90 │ │ │ │ ├── master.F90 │ │ │ │ ├── mph.F90 │ │ │ │ ├── pop.F90 │ │ │ │ ├── processors_map.in │ │ │ │ ├── script.jag │ │ │ │ └── ut_SparseMatrix.rc │ │ └── testunit │ │ │ ├── .gitignore │ │ │ ├── AttrVect_Test.F90 │ │ │ ├── Makefile │ │ │ └── master.F90 │ ├── pio1 │ │ ├── CMakeLists.txt │ │ ├── ChangeLog │ │ ├── ChangeLog_template │ │ ├── Doxyfile │ │ ├── DoxygenLayout.xml │ │ ├── SVN_EXTERNAL_DIRECTORIES │ │ ├── customdoxygen.css │ │ ├── doc │ │ │ ├── CAMexample.txt │ │ │ ├── Decomp.txt │ │ │ ├── DoxygenLayout.xml │ │ │ ├── Error.txt │ │ │ ├── Examples.txt │ │ │ ├── GettingStarted.txt │ │ │ ├── Installing.txt │ │ │ ├── api.txt │ │ │ ├── base.txt │ │ │ ├── example │ │ │ │ ├── errorhandle │ │ │ │ ├── simple-bc │ │ │ │ ├── simple-bc-rearr │ │ │ │ ├── simple-bc-rearr-pe1 │ │ │ │ ├── simple-bc-rearr-pe2 │ │ │ │ ├── simple-dof │ │ │ │ └── simple-dof-rearr │ │ │ ├── faq.txt │ │ │ ├── footer.html │ │ │ ├── header.html │ │ │ ├── images │ │ │ │ ├── baseimage.graffle │ │ │ │ ├── block-cyclic-rearr.eps │ │ │ │ ├── block-cyclic-rearr.graffle │ │ │ │ ├── block-cyclic-rearr.png │ │ │ │ ├── block-cyclic.eps │ │ │ │ ├── block-cyclic.graffle │ │ │ │ ├── block-cyclic.png │ │ │ │ ├── dof-rearr.eps │ │ │ │ ├── dof-rearr.graffle │ │ │ │ ├── dof-rearr.png │ │ │ │ ├── dof.eps │ │ │ │ ├── dof.graffle │ │ │ │ └── dof.png │ │ │ └── testpio_example.txt │ │ ├── doxygen.sty │ │ ├── pio │ │ │ ├── CMakeLists.txt │ │ │ ├── C_interface_mod.F90 │ │ │ ├── Makefile.conf.in │ │ │ ├── README.config │ │ │ ├── alloc_mod.F90.in │ │ │ ├── box_rearrange.F90.in │ │ │ ├── calcdecomp.F90 │ │ │ ├── calcdisplace_mod.F90 │ │ │ ├── config.h.in │ │ │ ├── dtypes.h │ │ │ ├── fdepends.awk │ │ │ ├── iompi_mod.F90.in │ │ │ ├── ionf_mod.F90 │ │ │ ├── nf_mod.F90 │ │ │ ├── pio.F90 │ │ │ ├── pio_kinds.F90 │ │ │ ├── pio_mpi_utils.F90 │ │ │ ├── pio_msg_callbacks.F90 │ │ │ ├── pio_msg_getput_callbacks.F90.in │ │ │ ├── pio_msg_mod.F90 │ │ │ ├── pio_nf_utils.F90 │ │ │ ├── pio_spmd_utils.F90.in │ │ │ ├── pio_support.F90 │ │ │ ├── pio_types.F90 │ │ │ ├── pio_utils.F90 │ │ │ ├── piodarray.F90.in │ │ │ ├── piolib_mod.F90 │ │ │ ├── pionfatt_mod.F90.in │ │ │ ├── pionfget_mod.F90.in │ │ │ ├── pionfput_mod.F90.in │ │ │ ├── pionfread_mod.F90.in │ │ │ ├── pionfwrite_mod.F90.in │ │ │ ├── piovdc.F90 │ │ │ ├── rearr_options.h │ │ │ ├── rearrange.F90.in │ │ │ └── topology.c │ │ ├── scripts │ │ │ ├── Utils.pm │ │ │ ├── config.pl │ │ │ └── testpio_yellowstone.pl │ │ ├── tests │ │ │ ├── testpio │ │ │ │ ├── CAM05.csh │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── MPASA30km.csh │ │ │ │ ├── MPASA60km.csh │ │ │ │ ├── POPB.csh │ │ │ │ ├── POPC.csh │ │ │ │ ├── POPD.csh │ │ │ │ ├── POPDv0.csh │ │ │ │ ├── POPDv1.csh │ │ │ │ ├── POPDv2.csh │ │ │ │ ├── POPDv3.csh │ │ │ │ ├── POPDv4.csh │ │ │ │ ├── POPDv5.csh │ │ │ │ ├── README.testpio │ │ │ │ ├── WRFB.csh │ │ │ │ ├── build_defaults.xml │ │ │ │ ├── check_mod.F90 │ │ │ │ ├── config_bench.xml │ │ │ │ ├── fdepends.awk │ │ │ │ ├── gdecomp_mod.F90 │ │ │ │ ├── kinds_mod.F90 │ │ │ │ ├── kraken.128.csh │ │ │ │ ├── kraken.1K.csh │ │ │ │ ├── kraken.256.csh │ │ │ │ ├── kraken.512.csh │ │ │ │ ├── kraken.64.csh │ │ │ │ ├── namelist_mod.F90 │ │ │ │ ├── namelists │ │ │ │ │ ├── testpio_in.apb05 │ │ │ │ │ ├── testpio_in.asb01 │ │ │ │ │ ├── testpio_in.asb04 │ │ │ │ │ ├── testpio_in.b01 │ │ │ │ │ ├── testpio_in.b02 │ │ │ │ │ ├── testpio_in.b03 │ │ │ │ │ ├── testpio_in.b04 │ │ │ │ │ ├── testpio_in.b05 │ │ │ │ │ ├── testpio_in.b06 │ │ │ │ │ ├── testpio_in.b07 │ │ │ │ │ ├── testpio_in.b08 │ │ │ │ │ ├── testpio_in.b09 │ │ │ │ │ ├── testpio_in.b10 │ │ │ │ │ ├── testpio_in.b11 │ │ │ │ │ ├── testpio_in.b12 │ │ │ │ │ ├── testpio_in.b13 │ │ │ │ │ ├── testpio_in.bb01 │ │ │ │ │ ├── testpio_in.bb02 │ │ │ │ │ ├── testpio_in.bb03 │ │ │ │ │ ├── testpio_in.bb04 │ │ │ │ │ ├── testpio_in.bb05 │ │ │ │ │ ├── testpio_in.bb06 │ │ │ │ │ ├── testpio_in.bb07 │ │ │ │ │ ├── testpio_in.bb08 │ │ │ │ │ ├── testpio_in.bn01 │ │ │ │ │ ├── testpio_in.bn02 │ │ │ │ │ ├── testpio_in.bn03 │ │ │ │ │ ├── testpio_in.n4b01 │ │ │ │ │ ├── testpio_in.n4b02 │ │ │ │ │ ├── testpio_in.n4b03 │ │ │ │ │ ├── testpio_in.n4b04 │ │ │ │ │ ├── testpio_in.n4b05 │ │ │ │ │ ├── testpio_in.n4b06 │ │ │ │ │ ├── testpio_in.n4b07 │ │ │ │ │ ├── testpio_in.n4b08 │ │ │ │ │ ├── testpio_in.n4n01 │ │ │ │ │ ├── testpio_in.n4n02 │ │ │ │ │ ├── testpio_in.n4n03 │ │ │ │ │ ├── testpio_in.pb01 │ │ │ │ │ ├── testpio_in.pb02 │ │ │ │ │ ├── testpio_in.pb03 │ │ │ │ │ ├── testpio_in.pb04 │ │ │ │ │ ├── testpio_in.pb05 │ │ │ │ │ ├── testpio_in.pb06 │ │ │ │ │ ├── testpio_in.pb07 │ │ │ │ │ ├── testpio_in.pb08 │ │ │ │ │ ├── testpio_in.pn01 │ │ │ │ │ ├── testpio_in.pn02 │ │ │ │ │ ├── testpio_in.pn03 │ │ │ │ │ ├── testpio_in.sb01 │ │ │ │ │ ├── testpio_in.sb02 │ │ │ │ │ ├── testpio_in.sb03 │ │ │ │ │ ├── testpio_in.sb04 │ │ │ │ │ ├── testpio_in.sb05 │ │ │ │ │ ├── testpio_in.sb06 │ │ │ │ │ ├── testpio_in.sb07 │ │ │ │ │ ├── testpio_in.sb08 │ │ │ │ │ ├── testpio_in.sn01 │ │ │ │ │ ├── testpio_in.sn02 │ │ │ │ │ ├── testpio_in.sn03 │ │ │ │ │ ├── testpio_in.wr01 │ │ │ │ │ └── testpio_in.wr02 │ │ │ │ ├── perl5lib │ │ │ │ │ ├── ChangeLog │ │ │ │ │ ├── README │ │ │ │ │ └── XML │ │ │ │ │ │ ├── Changes │ │ │ │ │ │ ├── Lite.pm │ │ │ │ │ │ ├── Lite │ │ │ │ │ │ └── Element.pm │ │ │ │ │ │ └── README │ │ │ │ ├── test.csh │ │ │ │ ├── test_lib.F90 │ │ │ │ ├── testdecomp.F90 │ │ │ │ ├── testdecomp.bluefire.run │ │ │ │ ├── testdecomp_in │ │ │ │ ├── testpio.F90 │ │ │ │ ├── testpio_bench.pl │ │ │ │ ├── testpio_build.pl │ │ │ │ ├── testpio_run.pl │ │ │ │ ├── utils_mod.F90 │ │ │ │ └── ystest.sh │ │ │ └── unittests │ │ │ │ ├── CMakeLists.txt │ │ │ │ ├── Levy_Notes │ │ │ │ ├── README │ │ │ │ ├── basic_tests.F90 │ │ │ │ ├── driver.F90 │ │ │ │ ├── global_vars.F90 │ │ │ │ ├── input.nl │ │ │ │ ├── nc_set_log_level2.c │ │ │ │ ├── ncdf_tests.F90 │ │ │ │ └── not_netcdf.ieee │ │ └── timing │ │ │ ├── CMakeLists.txt │ │ │ ├── COPYING │ │ │ ├── ChangeLog │ │ │ ├── GPTLget_memusage.c │ │ │ ├── GPTLprint_memusage.c │ │ │ ├── GPTLutil.c │ │ │ ├── Makefile │ │ │ ├── README │ │ │ ├── XXXdotF │ │ │ ├── perf_mod.F │ │ │ └── perf_utils.F │ │ │ ├── f_wrappers.c │ │ │ ├── gptl.c │ │ │ ├── gptl.h │ │ │ ├── gptl.inc │ │ │ ├── gptl_papi.c │ │ │ ├── perf_mod.F90 │ │ │ ├── perf_utils.F90 │ │ │ ├── private.h │ │ │ └── threadutil.c │ └── pio2 │ │ ├── .gitignore │ │ ├── CMakeLists.txt │ │ ├── CTestConfig.cmake │ │ ├── CTestScript.cmake │ │ ├── Makefile.am │ │ ├── README.md │ │ ├── cmake │ │ ├── FindGPTL.cmake │ │ ├── FindHDF5.cmake │ │ ├── FindLIBRT.cmake │ │ ├── FindLIBZ.cmake │ │ ├── FindMPE.cmake │ │ ├── FindMPISERIAL.cmake │ │ ├── FindNetCDF.cmake │ │ ├── FindPAPI.cmake │ │ ├── FindPnetCDF.cmake │ │ ├── FindSZIP.cmake │ │ ├── LibCheck.cmake │ │ ├── LibFind.cmake │ │ ├── LibMPI.cmake │ │ ├── TryHDF5_HAS_SZIP.c │ │ ├── TryNetCDF_DAP.c │ │ ├── TryNetCDF_PARALLEL.c │ │ ├── TryNetCDF_PNETCDF.c │ │ ├── mpiexec.alcf │ │ ├── mpiexec.ncsa │ │ ├── mpiexec.nersc │ │ ├── mpiexec.nwsc │ │ ├── mpiexec.nwscla │ │ └── mpiexec.olcf │ │ ├── cmake_config.h.in │ │ ├── configure.ac │ │ ├── ctest │ │ ├── CTestEnvironment-alcf.cmake │ │ ├── CTestEnvironment-anlworkstation.cmake │ │ ├── CTestEnvironment-cgd.cmake │ │ ├── CTestEnvironment-ncsa.cmake │ │ ├── CTestEnvironment-nersc.cmake │ │ ├── CTestEnvironment-nwsc.cmake │ │ ├── CTestEnvironment-nwscla.cmake │ │ ├── CTestEnvironment-unknown.cmake │ │ ├── CTestScript-Test.cmake │ │ ├── runcdash-alcf-ibm.sh │ │ ├── runcdash-anlworkstation.sh │ │ ├── runcdash-cgd-gnu-openmpi.sh │ │ ├── runcdash-cgd-nag.sh │ │ ├── runcdash-nersc-cray.sh │ │ ├── runcdash-nersc-intel.sh │ │ ├── runcdash-nwsc-gnu.sh │ │ ├── runcdash-nwsc-intel-mpiserial.sh │ │ ├── runcdash-nwsc-intel.sh │ │ ├── runcdash-nwsc-pgi.sh │ │ ├── runcdash-nwscla-intel.sh │ │ ├── runctest-alcf.sh │ │ ├── runctest-anlworkstation.sh │ │ ├── runctest-cgd.sh │ │ ├── runctest-ncsa.sh │ │ ├── runctest-nersc.sh │ │ ├── runctest-nwsc.sh │ │ ├── runctest-nwscla.sh │ │ └── runctest-unknown.sh │ │ ├── doc │ │ ├── CMakeFiles │ │ │ ├── 3.2.3 │ │ │ │ └── CMakeSystem.cmake │ │ │ ├── CMakeOutput.log │ │ │ └── cmake.check_cache │ │ ├── CMakeLists.txt │ │ ├── Doxyfile.in │ │ ├── DoxygenLayout.xml │ │ ├── customdoxygen.css │ │ ├── doxygen.sty │ │ ├── images │ │ │ ├── baseimage.graffle │ │ │ ├── block-cyclic-rearr.eps │ │ │ ├── block-cyclic-rearr.graffle │ │ │ ├── block-cyclic-rearr.png │ │ │ ├── block-cyclic.eps │ │ │ ├── block-cyclic.graffle │ │ │ ├── block-cyclic.png │ │ │ ├── dof-rearr.eps │ │ │ ├── dof-rearr.graffle │ │ │ ├── dof-rearr.png │ │ │ ├── dof.eps │ │ │ ├── dof.graffle │ │ │ └── dof.png │ │ └── source │ │ │ ├── CAMexample.txt │ │ │ ├── Decomp.txt │ │ │ ├── Error.txt │ │ │ ├── Examples.txt │ │ │ ├── GettingStarted.txt │ │ │ ├── Installing.txt │ │ │ ├── Testing.txt │ │ │ ├── api.txt │ │ │ ├── base.txt │ │ │ ├── contributing_code.txt │ │ │ ├── example │ │ │ ├── errorhandle │ │ │ ├── simple-bc │ │ │ ├── simple-bc-rearr │ │ │ ├── simple-bc-rearr-pe1 │ │ │ ├── simple-bc-rearr-pe2 │ │ │ ├── simple-dof │ │ │ └── simple-dof-rearr │ │ │ ├── faq.txt │ │ │ ├── mach_walkthrough.txt │ │ │ └── testpio_example.txt │ │ ├── examples │ │ ├── CMakeLists.txt │ │ ├── basic │ │ │ ├── CAM05.csh │ │ │ ├── CMakeLists.txt │ │ │ ├── MPASA30km.csh │ │ │ ├── MPASA60km.csh │ │ │ ├── POPB.csh │ │ │ ├── POPC.csh │ │ │ ├── POPD.csh │ │ │ ├── POPDv0.csh │ │ │ ├── POPDv1.csh │ │ │ ├── POPDv2.csh │ │ │ ├── POPDv3.csh │ │ │ ├── POPDv4.csh │ │ │ ├── POPDv5.csh │ │ │ ├── README.testpio │ │ │ ├── WRFB.csh │ │ │ ├── alloc_mod.F90.in │ │ │ ├── build_defaults.xml │ │ │ ├── check_mod.F90 │ │ │ ├── config_bench.xml │ │ │ ├── fdepends.awk │ │ │ ├── gdecomp_mod.F90 │ │ │ ├── kinds_mod.F90 │ │ │ ├── kraken.128.csh │ │ │ ├── kraken.1K.csh │ │ │ ├── kraken.256.csh │ │ │ ├── kraken.512.csh │ │ │ ├── kraken.64.csh │ │ │ ├── namelist_mod.F90 │ │ │ ├── namelists │ │ │ │ ├── testpio_in.apb05 │ │ │ │ ├── testpio_in.asb01 │ │ │ │ ├── testpio_in.asb04 │ │ │ │ ├── testpio_in.n4b01 │ │ │ │ ├── testpio_in.n4b02 │ │ │ │ ├── testpio_in.n4b03 │ │ │ │ ├── testpio_in.n4b04 │ │ │ │ ├── testpio_in.n4b05 │ │ │ │ ├── testpio_in.n4b06 │ │ │ │ ├── testpio_in.n4b07 │ │ │ │ ├── testpio_in.n4b08 │ │ │ │ ├── testpio_in.n4n01 │ │ │ │ ├── testpio_in.n4n02 │ │ │ │ ├── testpio_in.n4n03 │ │ │ │ ├── testpio_in.pb01 │ │ │ │ ├── testpio_in.pb02 │ │ │ │ ├── testpio_in.pb03 │ │ │ │ ├── testpio_in.pb04 │ │ │ │ ├── testpio_in.pb05 │ │ │ │ ├── testpio_in.pb06 │ │ │ │ ├── testpio_in.pb07 │ │ │ │ ├── testpio_in.pb08 │ │ │ │ ├── testpio_in.pn01 │ │ │ │ ├── testpio_in.pn02 │ │ │ │ ├── testpio_in.pn03 │ │ │ │ ├── testpio_in.ps01 │ │ │ │ ├── testpio_in.ps02 │ │ │ │ ├── testpio_in.ps03 │ │ │ │ ├── testpio_in.ps04 │ │ │ │ ├── testpio_in.ps05 │ │ │ │ ├── testpio_in.ps06 │ │ │ │ ├── testpio_in.ps07 │ │ │ │ ├── testpio_in.ps08 │ │ │ │ ├── testpio_in.sb01 │ │ │ │ ├── testpio_in.sb02 │ │ │ │ ├── testpio_in.sb03 │ │ │ │ ├── testpio_in.sb04 │ │ │ │ ├── testpio_in.sb05 │ │ │ │ ├── testpio_in.sb06 │ │ │ │ ├── testpio_in.sb07 │ │ │ │ ├── testpio_in.sb08 │ │ │ │ ├── testpio_in.sn01 │ │ │ │ ├── testpio_in.sn02 │ │ │ │ ├── testpio_in.sn03 │ │ │ │ ├── testpio_in.wr01 │ │ │ │ └── testpio_in.wr02 │ │ │ ├── perl5lib │ │ │ │ ├── ChangeLog │ │ │ │ ├── README │ │ │ │ └── XML │ │ │ │ │ ├── Changes │ │ │ │ │ ├── Lite.pm │ │ │ │ │ ├── Lite │ │ │ │ │ └── Element.pm │ │ │ │ │ └── README │ │ │ ├── test.csh │ │ │ ├── testdecomp.F90 │ │ │ ├── testdecomp.bluefire.run │ │ │ ├── testdecomp_in │ │ │ ├── testpio.F90 │ │ │ ├── testpio_bench.pl │ │ │ ├── testpio_build.pl │ │ │ ├── testpio_run.pl │ │ │ ├── utils_mod.F90 │ │ │ ├── wstest.c │ │ │ └── ystest.sh │ │ ├── c │ │ │ ├── CMakeLists.txt │ │ │ ├── darray_async.c │ │ │ ├── darray_no_async.c │ │ │ ├── example1.c │ │ │ ├── example2.c │ │ │ ├── examplePio.c │ │ │ └── valsupp_example1.supp │ │ ├── cxx │ │ │ ├── CMakeLists.txt │ │ │ └── examplePio.cxx │ │ └── f03 │ │ │ ├── CMakeLists.txt │ │ │ └── examplePio.f90 │ │ ├── scripts │ │ └── prune_decomps.pl │ │ ├── src │ │ ├── CMakeLists.txt │ │ ├── Makefile.am │ │ ├── clib │ │ │ ├── CMakeLists.txt │ │ │ ├── Makefile.am │ │ │ ├── bget.c │ │ │ ├── bget.h │ │ │ ├── pio.h │ │ │ ├── pio_darray.c │ │ │ ├── pio_darray_int.c │ │ │ ├── pio_file.c │ │ │ ├── pio_get_nc.c │ │ │ ├── pio_getput_int.c │ │ │ ├── pio_internal.h │ │ │ ├── pio_lists.c │ │ │ ├── pio_msg.c │ │ │ ├── pio_nc.c │ │ │ ├── pio_nc4.c │ │ │ ├── pio_put_nc.c │ │ │ ├── pio_rearrange.c │ │ │ ├── pio_spmd.c │ │ │ ├── pio_varm.c │ │ │ ├── pioc.c │ │ │ ├── pioc_sc.c │ │ │ ├── pioc_support.c │ │ │ └── topology.c │ │ ├── flib │ │ │ ├── CMakeLists.txt │ │ │ ├── pio.F90 │ │ │ ├── pio_kinds.F90 │ │ │ ├── pio_nf.F90 │ │ │ ├── pio_support.F90 │ │ │ ├── pio_types.F90 │ │ │ ├── piodarray.F90.in │ │ │ ├── piolib_mod.F90 │ │ │ ├── pionfatt_mod.F90.in │ │ │ ├── pionfget_mod.F90.in │ │ │ └── pionfput_mod.F90.in │ │ └── gptl │ │ │ ├── CMakeLists.txt │ │ │ ├── COPYING │ │ │ ├── ChangeLog │ │ │ ├── GPTLget_memusage.c │ │ │ ├── GPTLprint_memusage.c │ │ │ ├── GPTLutil.c │ │ │ ├── README │ │ │ ├── f_wrappers.c │ │ │ ├── gptl.c │ │ │ ├── gptl.h │ │ │ ├── gptl.inc │ │ │ ├── gptl_papi.c │ │ │ ├── perf_mod.F90 │ │ │ ├── perf_utils.F90 │ │ │ ├── private.h │ │ │ └── threadutil.c │ │ └── tests │ │ ├── CMakeLists.txt │ │ ├── Makefile.am │ │ ├── cunit │ │ ├── CMakeLists.txt │ │ ├── Makefile.am │ │ ├── pio_tests.h │ │ ├── run_tests.sh │ │ ├── test_async_3proc.c │ │ ├── test_async_4proc.c │ │ ├── test_async_manyproc.c │ │ ├── test_async_mpi.c │ │ ├── test_async_multi2.c │ │ ├── test_async_multicomp.c │ │ ├── test_async_simple.c │ │ ├── test_common.c │ │ ├── test_darray.c │ │ ├── test_darray_1d.c │ │ ├── test_darray_2sync.c │ │ ├── test_darray_3d.c │ │ ├── test_darray_async.c │ │ ├── test_darray_async_many.c │ │ ├── test_darray_async_simple.c │ │ ├── test_darray_frame.c │ │ ├── test_darray_multi.c │ │ ├── test_darray_multivar.c │ │ ├── test_darray_multivar2.c │ │ ├── test_darray_multivar3.c │ │ ├── test_decomp_uneven.c │ │ ├── test_decomps.c │ │ ├── test_intercomm2.c │ │ ├── test_iosystem2.c │ │ ├── test_iosystem2_simple.c │ │ ├── test_iosystem2_simple2.c │ │ ├── test_iosystem3.c │ │ ├── test_iosystem3_simple.c │ │ ├── test_iosystem3_simple2.c │ │ ├── test_pioc.c │ │ ├── test_pioc_fill.c │ │ ├── test_pioc_putget.c │ │ ├── test_pioc_unlim.c │ │ ├── test_rearr.c │ │ ├── test_shared.c │ │ └── test_spmd.c │ │ ├── general │ │ ├── CMakeLists.txt │ │ ├── README.md │ │ ├── ncdf_fail.F90.in │ │ ├── ncdf_get_put.F90.in │ │ ├── ncdf_inq.F90.in │ │ ├── ncdf_simple_tests.F90.in │ │ ├── pio_decomp_fillval.F90.in │ │ ├── pio_decomp_frame_tests.F90.in │ │ ├── pio_decomp_tests.F90.in │ │ ├── pio_decomp_tests_1d.F90.in │ │ ├── pio_decomp_tests_2d.F90.in │ │ ├── pio_decomp_tests_3d.F90.in │ │ ├── pio_fail.F90.in │ │ ├── pio_file_fail.F90.in │ │ ├── pio_file_simple_tests.F90.in │ │ ├── pio_init_finalize.F90.in │ │ ├── pio_iosystem_tests.F90.in │ │ ├── pio_iosystem_tests2.F90.in │ │ ├── pio_iosystem_tests3.F90.in │ │ ├── pio_rearr.F90.in │ │ ├── pio_rearr_opts.F90.in │ │ ├── pio_rearr_opts2.F90.in │ │ ├── test_memleak.c │ │ └── util │ │ │ ├── pio_tf_f90gen.pl │ │ │ └── pio_tutil.F90 │ │ ├── performance │ │ ├── CMakeLists.txt │ │ ├── gensimple.pl │ │ ├── kt.PIO1.perfmakefile │ │ └── pioperformance.F90 │ │ └── unit │ │ ├── CMakeLists.txt │ │ ├── Levy_Notes │ │ ├── basic_tests.F90 │ │ ├── driver.F90 │ │ ├── global_vars.F90 │ │ ├── input.nl │ │ ├── nc_set_log_level2.c │ │ ├── ncdf_tests.F90 │ │ └── not_netcdf.ieee └── share │ ├── README │ ├── RandNum │ ├── include │ │ ├── dSFMT-common.h │ │ ├── dSFMT-params.h │ │ ├── dSFMT-params19937.h │ │ └── dSFMT.h │ ├── src │ │ ├── dsfmt_f03 │ │ │ ├── dSFMT.c │ │ │ ├── dSFMT_interface.F90 │ │ │ └── dSFMT_utils.c │ │ ├── kissvec │ │ │ ├── kissvec.c │ │ │ └── kissvec_mod.F90 │ │ ├── mt19937 │ │ │ └── mersennetwister_mod.F90 │ │ └── shr_RandNum_mod.F90 │ └── test │ │ └── bench │ │ ├── Makefile │ │ └── test_shr_RandNum.F90 │ ├── esmf_wrf_timemgr │ ├── CMakeLists.txt │ ├── ESMF.F90 │ ├── ESMF_AlarmClockMod.F90 │ ├── ESMF_AlarmMod.F90 │ ├── ESMF_BaseMod.F90 │ ├── ESMF_BaseTimeMod.F90 │ ├── ESMF_CalendarMod.F90 │ ├── ESMF_ClockMod.F90 │ ├── ESMF_FractionMod.F90 │ ├── ESMF_Macros.inc │ ├── ESMF_ShrTimeMod.F90 │ ├── ESMF_Stubs.F90 │ ├── ESMF_TimeIntervalMod.F90 │ ├── ESMF_TimeMgr.inc │ ├── ESMF_TimeMod.F90 │ ├── Makefile │ ├── MeatMod.F90 │ ├── README │ ├── unittests │ │ ├── Makefile │ │ ├── go.csh │ │ ├── test.F90 │ │ └── wrf_stuff.F90 │ ├── wrf_error_fatal.F90 │ └── wrf_message.F90 │ ├── include │ ├── dynamic_vector_procdef.inc │ ├── dynamic_vector_typedef.inc │ └── shr_assert.h │ ├── streams │ ├── shr_dmodel_mod.F90 │ ├── shr_strdata_mod.F90 │ ├── shr_stream_mod.F90 │ └── shr_tInterp_mod.F90 │ ├── test │ ├── old_unit_testers │ │ ├── Makefile │ │ ├── Mkdepends │ │ ├── Mksrcfiles │ │ ├── bundle_expected.F90 │ │ ├── config.h │ │ ├── make.Macros │ │ ├── namelist │ │ ├── nl │ │ │ ├── atm.stdin │ │ │ ├── cpl.stdin │ │ │ ├── ice.stdin │ │ │ ├── lnd.stdin │ │ │ └── ocn.stdin │ │ ├── run_dshr_bundle_test │ │ ├── run_file_test │ │ ├── test_mod.F90 │ │ ├── test_shr_file.F90 │ │ ├── test_shr_log.F90 │ │ ├── test_shr_mpi.F90 │ │ ├── test_shr_orb.F90 │ │ ├── test_shr_scam.F90 │ │ ├── test_shr_streams.F90 │ │ ├── test_shr_sys.F90 │ │ └── test_shr_tInterp.F90 │ └── unit │ │ ├── CMakeLists.txt │ │ ├── dynamic_vector │ │ ├── CMakeLists.txt │ │ ├── character16_vector_tests.pf.in │ │ ├── dynamic_vector_base_tests.inc │ │ ├── dynamic_vector_character16.F90 │ │ ├── dynamic_vector_int_ptr.F90 │ │ ├── dynamic_vector_integer.F90 │ │ ├── dynamic_vector_r8.F90 │ │ ├── int_ptr_vector_tests.pf.in │ │ ├── integer_vector_tests.pf.in │ │ ├── ptr_wrapper.F90 │ │ └── r8_vector_tests.pf.in │ │ ├── mock │ │ ├── CMakeLists.txt │ │ ├── README │ │ └── shr_sys_mod.nompi_abortthrows.F90 │ │ ├── shr_abort_test │ │ ├── CMakeLists.txt │ │ ├── README │ │ └── test_shr_abort.pf │ │ ├── shr_assert_test │ │ ├── CMakeLists.txt │ │ ├── test_assert.pf │ │ ├── test_assert_array.pf │ │ ├── test_macro.pf │ │ └── test_ndebug.pf │ │ ├── shr_cal_test │ │ ├── CMakeLists.txt │ │ └── test_shr_cal.pf │ │ ├── shr_infnan_test │ │ ├── CMakeLists.txt │ │ └── test_infnan.F90 │ │ ├── shr_log_test │ │ ├── CMakeLists.txt │ │ └── test_error_printers.pf │ │ ├── shr_precip_test │ │ ├── CMakeLists.txt │ │ └── test_shr_precip.pf │ │ ├── shr_spfn_test │ │ ├── CMakeLists.txt │ │ ├── test_erf_r4.pf │ │ ├── test_erf_r8.pf │ │ ├── test_gamma_factorial.pf │ │ └── test_igamma.pf │ │ ├── shr_strconvert_test │ │ ├── CMakeLists.txt │ │ └── test_toString.pf │ │ ├── shr_string_test │ │ ├── CMakeLists.txt │ │ └── test_shr_string.pf │ │ ├── shr_vmath_test │ │ ├── CMakeLists.txt │ │ └── test_vmath.F90 │ │ └── shr_wv_sat_test │ │ ├── CMakeLists.txt │ │ ├── test_wv_sat.pf │ │ └── test_wv_sat_each_method.pf │ ├── timing │ ├── CMakeLists.txt │ ├── COPYING │ ├── ChangeLog │ ├── GPTLget_memusage.c │ ├── GPTLprint_memusage.c │ ├── GPTLutil.c │ ├── Makefile │ ├── README │ ├── f_wrappers.c │ ├── gptl.c │ ├── gptl.h │ ├── gptl.inc │ ├── gptl_papi.c │ ├── perf_mod.F90 │ ├── perf_utils.F90 │ └── private.h │ ├── unit_test_stubs │ ├── README │ ├── pio │ │ ├── CMakeLists.txt │ │ ├── README │ │ └── pio.F90.in │ └── util │ │ ├── CMakeLists.txt │ │ ├── README │ │ └── shr_abort_mod.abortthrows.F90 │ └── util │ ├── CMakeLists.txt │ ├── mct_mod.F90 │ ├── shr_abort_mod.F90 │ ├── shr_assert_mod.F90.in │ ├── shr_cal_mod.F90 │ ├── shr_const_mod.F90 │ ├── shr_file_mod.F90 │ ├── shr_flds_mod.F90 │ ├── shr_flux_mod.F90 │ ├── shr_frz_mod.F90.in │ ├── shr_infnan_mod.F90.in │ ├── shr_kind_mod.F90 │ ├── shr_log_mod.F90 │ ├── shr_map_mod.F90 │ ├── shr_mct_mod.F90 │ ├── shr_mem_mod.F90 │ ├── shr_mpi_mod.F90 │ ├── shr_msg_mod.F90 │ ├── shr_ncread_mod.F90 │ ├── shr_nl_mod.F90 │ ├── shr_orb_mod.F90 │ ├── shr_pcdf_mod.F90 │ ├── shr_pio_mod.F90 │ ├── shr_precip_mod.F90 │ ├── shr_reprosum_mod.F90 │ ├── shr_reprosumx86.c │ ├── shr_scam_mod.F90 │ ├── shr_spfn_mod.F90 │ ├── shr_strconvert_mod.F90 │ ├── shr_string_mod.F90 │ ├── shr_sys_mod.F90 │ ├── shr_taskmap_mod.F90 │ ├── shr_timer_mod.F90 │ ├── shr_vmath_mod.F90 │ ├── shr_wv_sat_mod.F90 │ ├── water_isotopes.F90 │ └── water_types.F90 ├── tools ├── MakeRedsky.sh ├── Readme.configure ├── configure ├── cprnc │ ├── CMakeLists.txt │ ├── Depends │ ├── Makefile │ ├── README │ ├── compare_vars_mod.F90.in │ ├── cprnc.F90 │ ├── filestruct.F90 │ ├── prec.F90 │ ├── run_tests │ ├── summarize_cprnc_diffs │ ├── test.csh │ ├── test_inputs │ │ ├── README │ │ ├── clm2.h0.subset.control.nc │ │ ├── clm2.h0.subset.test.nc │ │ ├── clm2.h1.subset.control.nc │ │ ├── clm2.h1.subset.test.nc │ │ ├── control.nc │ │ ├── control_0d.nc │ │ ├── control_multipleTimes_someTimeless.nc │ │ ├── control_noTime.nc │ │ ├── copy.nc │ │ ├── cpl.hi.subset.control.nc │ │ ├── cpl.hi.subset.test.nc │ │ ├── diffs_0d.nc │ │ ├── diffs_in_fill.nc │ │ ├── diffs_in_vals.nc │ │ ├── diffs_in_vals_and_diffs_in_fill.nc │ │ ├── diffs_in_vals_and_fill.nc │ │ ├── lon_differs.nc │ │ ├── multipleTimes_someTimeless_diffs_in_vals_and_fill.nc │ │ ├── noTime_diffs_in_vals_and_fill.nc │ │ ├── vals_differ_by_1.1.nc │ │ ├── vals_differ_by_1.1_somewhere.nc │ │ ├── vals_differ_by_varying_amounts.nc │ │ └── vals_differ_by_varying_amounts2.nc │ └── utils.F90 ├── load_balancing_tool │ ├── LICENSE.TXT │ ├── README │ ├── layouts.py │ ├── load_balancing_solve.py │ ├── load_balancing_submit.py │ ├── optimize_model.py │ └── tests │ │ ├── __init__.py │ │ ├── atm_lnd.py │ │ ├── example.json │ │ ├── load_balancing_test.py │ │ ├── test.xml │ │ └── timing │ │ ├── timing_1 │ │ ├── timing_2 │ │ └── timing_3 ├── mapping │ ├── SCRIP2plot.ncl │ ├── check_maps │ │ ├── .gitignore │ │ ├── README │ │ ├── check_map.sh │ │ └── src │ │ │ ├── ESMF_RegridWeightGenCheck.F90 │ │ │ └── Makefile │ ├── examples │ │ └── wrf_clm │ ├── gen_domain_files │ │ ├── .gitignore │ │ ├── INSTALL │ │ ├── README │ │ └── src │ │ │ ├── .gitignore │ │ │ ├── Filepath │ │ │ ├── Makefile │ │ │ └── gen_domain.F90 │ ├── gen_mapping_files │ │ ├── .gitignore │ │ ├── README │ │ ├── gen_ESMF_mapping_file │ │ │ ├── .gitignore │ │ │ ├── README │ │ │ ├── create_ESMF_map.sh │ │ │ ├── nearestdtos.area_fix.sh │ │ │ └── overwrite_map_area.ncl │ │ ├── gen_cesm_maps.sh │ │ └── runoff_to_ocn │ │ │ ├── .gitignore │ │ │ ├── INSTALL │ │ │ ├── README │ │ │ ├── map_r05_to_gx1v6_nnsm_e1000r300.nml │ │ │ ├── map_r05_to_gx1v7_nnsm_e1000r300.nml │ │ │ ├── map_r05_to_gx3v7_nnsm_e1000r500.nml │ │ │ ├── map_rx1_to_gx1v6_nnsm_e1000r300.nml │ │ │ ├── map_rx1_to_gx1v7_nnsm_e1000r300.nml │ │ │ ├── map_rx1_to_gx3v7_nnsm_e1000r500.nml │ │ │ ├── map_wr50a_to_ar9v4_nnsm_e1000r300.nml │ │ │ ├── map_wr50a_to_gx3v7_nnsm_e1000r300.nml │ │ │ ├── maps │ │ │ └── .gitignore │ │ │ ├── ncl │ │ │ └── merge_mapping_files.ncl │ │ │ ├── run_merge_mapping_files.sh │ │ │ ├── src │ │ │ ├── Makefile │ │ │ ├── fixroff_mod.F90 │ │ │ ├── kind_mod.F90 │ │ │ ├── main.F90 │ │ │ ├── map_mod.F90 │ │ │ ├── mapsort_mod.F90 │ │ │ ├── shr_kind_mod.F90 │ │ │ ├── shr_sys_mod.F90 │ │ │ ├── shr_timer_mod.F90 │ │ │ └── smooth_mod.F90 │ │ │ └── tools │ │ │ └── makdep.c │ ├── gridplot.sh │ └── map_field │ │ ├── .gitignore │ │ ├── INSTALL │ │ ├── README │ │ └── src │ │ ├── Filepath │ │ ├── Makefile │ │ └── map_field.F90 ├── statistical_ensemble_test │ ├── README │ ├── addmetadata.sh │ ├── ensemble.py │ ├── pyCECT │ │ ├── .gitignore │ │ ├── EET.py │ │ ├── LICENSE.txt │ │ ├── README_pyCECT.rst │ │ ├── README_pyEnsSum.rst │ │ ├── README_pyEnsSumPop.rst │ │ ├── beta06_ens_excluded_varlist.json │ │ ├── beta06_ens_excluded_varlist_a.json │ │ ├── ens_excluded_varlist.json │ │ ├── ens_sub.pbs │ │ ├── ens_sub.sh │ │ ├── exclude_empty.json │ │ ├── gm_cumul.sh │ │ ├── included_varlist.json │ │ ├── pop_ensemble.json │ │ ├── pyCECT.py │ │ ├── pyEnsLib.py │ │ ├── pyEnsSum.py │ │ ├── pyEnsSumPop.py │ │ ├── pyEnsSumPop_test.sh │ │ ├── test_pop_CECT.sh │ │ └── test_pop_ensemble.sh │ ├── single_run.py │ └── user_nl_cam_LENS └── utils │ └── find_circular_dependency.py └── utils └── perl5lib ├── Build ├── Config.pm ├── Namelist.pm ├── NamelistDefaults.pm └── NamelistDefinition.pm ├── Config └── SetupTools.pm ├── Decomp ├── Config.pm └── OverallConfig.pm ├── File ├── Copy │ ├── .exists │ └── Recursive.pm ├── DirCompare.pm └── Find │ └── Rule.pm ├── Log ├── Log4perl.pm └── Log4perl │ ├── Appender.pm │ ├── Appender │ ├── Buffer.pm │ ├── DBI.pm │ ├── File.pm │ ├── Limit.pm │ ├── RRDs.pm │ ├── Screen.pm │ ├── ScreenColoredLevels.pm │ ├── Socket.pm │ ├── String.pm │ ├── Synchronized.pm │ ├── TestArrayBuffer.pm │ ├── TestBuffer.pm │ └── TestFileCreeper.pm │ ├── Catalyst.pm │ ├── Config.pm │ ├── Config │ ├── BaseConfigurator.pm │ ├── DOMConfigurator.pm │ ├── PropertyConfigurator.pm │ └── Watch.pm │ ├── DateFormat.pm │ ├── FAQ.pm │ ├── Filter.pm │ ├── Filter │ ├── Boolean.pm │ ├── LevelMatch.pm │ ├── LevelRange.pm │ ├── MDC.pm │ └── StringMatch.pm │ ├── InternalDebug.pm │ ├── JavaMap.pm │ ├── JavaMap │ ├── ConsoleAppender.pm │ ├── FileAppender.pm │ ├── JDBCAppender.pm │ ├── NTEventLogAppender.pm │ ├── RollingFileAppender.pm │ ├── SyslogAppender.pm │ └── TestBuffer.pm │ ├── Layout.pm │ ├── Layout │ ├── NoopLayout.pm │ ├── PatternLayout.pm │ ├── PatternLayout │ │ └── Multiline.pm │ └── SimpleLayout.pm │ ├── Level.pm │ ├── Logger.pm │ ├── MDC.pm │ ├── NDC.pm │ ├── Resurrector.pm │ ├── Util.pm │ └── Util │ ├── Semaphore.pm │ └── TimeTracker.pm ├── Number └── Compare.pm ├── Text └── Glob.pm ├── XML ├── Changes ├── Lite.pm ├── Lite │ └── Element.pm ├── README └── man3 │ ├── XML_Lite.3 │ └── XML_Lite_Element.3 └── compilers_translation_tool.pl /.github/PULL_REQUEST_TEMPLATE: -------------------------------------------------------------------------------- 1 | [ Description of the changes in this Pull Request. It should be enough 2 | information for someone not following this development to understand. 3 | Lines should be wrapped at about 72 characters. Please also update 4 | the CIME documentation, if necessary, in doc/source/rst and indicate 5 | below if you need to have the gh-pages html regenerated.] 6 | 7 | Test suite: 8 | Test baseline: 9 | Test namelist changes: 10 | Test status: [bit for bit, roundoff, climate changing] 11 | 12 | Fixes [CIME Github issue #] 13 | 14 | User interface changes?: 15 | 16 | Update gh-pages html (Y/N)?: 17 | 18 | Code review: 19 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore python bytecode files 2 | *.pyc 3 | buildnmlc 4 | buildlib.*c 5 | 6 | # Ignore emacs backup files 7 | *~ 8 | 9 | # ignore for the merge to master and orphaning of the gh-pages branch 10 | doc/build 11 | 12 | # ignore temporary doc files 13 | doc/source/Tools_user/temp_files 14 | 15 | # ignore the JENKINS files created when make html is run 16 | scripts/Tools/JENKINS* 17 | 18 | # Ignore anything that are produced under scripts "cases" directory 19 | /scripts/cases/ 20 | -------------------------------------------------------------------------------- /.nojekyll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/.nojekyll -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: python 2 | 3 | before_install: 4 | - sudo apt-get install -y libxml2-utils 5 | 6 | install: 7 | - pip install pylint 8 | 9 | python: 10 | - '2.7' 11 | - '3.6' 12 | 13 | env: 14 | - CIME_MODEL=cesm 15 | 16 | script: cd scripts/tests; ./scripts_regression_tests.py --machine centos7-linux A_RunUnitTests B_CheckCode G_TestMacrosBasic H_TestMakeMacros I_TestCMakeMacros 17 | 18 | # In addition to building PRs, also run the build on the following branches whenever 19 | # it's pushed 20 | branches: 21 | only: 22 | - master 23 | - maint-5.6 24 | - nuopc-cmeps 25 | -------------------------------------------------------------------------------- /ChangeLog_template: -------------------------------------------------------------------------------- 1 | ====================================================================== 2 | 3 | Originator: 4 | Date: 5 | Tag: cimeX.Y.Z 6 | Answer Changes: [None, Round Off, Climate Changing] 7 | Tests: 8 | Dependencies: 9 | 10 | Brief Summary: 11 | 12 | User interface changes: 13 | 14 | PR summary: git log --oneline --first-parent [previous_tag]..master 15 | 16 | Modified files: git diff --name-status [previous_tag] 17 | 18 | ====================================================================== 19 | 20 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.babbageKnc: -------------------------------------------------------------------------------- 1 | 2 | shr_ncread_mod.o: shr_ncread_mod.F90 3 | $(FC) -c $(FPPFLAGS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) $< 4 | 5 | quadrature_mod.o: quadrature_mod.F90 6 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS) $(FREEFLAGS) -DIS_ACCELERATOR $< 7 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.bluewaters: -------------------------------------------------------------------------------- 1 | # 2 | ifeq ($(strip $(COMPILER)),pgi) 3 | progseasalts_intr.o: progseasalts_intr.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS) $(FREEFLAGS) -Mnovect $< 5 | endif 6 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.corip1: -------------------------------------------------------------------------------- 1 | # Workaround for ICE in intel/2016.0.109 2 | ifeq (CPRINTEL,$(findstring CPRINTEL, $(FFLAGS))) 3 | RtmMod.o: RtmMod.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS) $(FREEFLAGS) $(CONTIGUOUS_FLAG) -O1 $< 5 | endif 6 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.cray: -------------------------------------------------------------------------------- 1 | NOOPTOBJS= ice_boundary.o dyn_comp.o unicon.o 2 | 3 | $(NOOPTOBJS): %.o: %.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 5 | 6 | 7 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.gnu: -------------------------------------------------------------------------------- 1 | geopk.o:geopk.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS) $(FREEFLAGS) -fcray-pointer $< 3 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.intelmic: -------------------------------------------------------------------------------- 1 | 2 | #derivative_mod_base.o: derivative_mod_base.F90 3 | # $(FC) -c $(FPPFLAGS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) -O1 $< 4 | 5 | shr_ncread_mod.o: shr_ncread_mod.F90 6 | $(FC) -c $(FPPFLAGS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) $< 7 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.intelmic14: -------------------------------------------------------------------------------- 1 | 2 | #derivative_mod_base.o: derivative_mod_base.F90 3 | # $(FC) -c $(FPPFLAGS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) -O1 $< 4 | 5 | shr_ncread_mod.o: shr_ncread_mod.F90 6 | $(FC) -c $(FPPFLAGS) $(INCLDIR) $(INCS) $(FREEFLAGS) $(FFLAGS_NOOPT) $< 7 | -------------------------------------------------------------------------------- /config/cesm/machines/Depends.nag: -------------------------------------------------------------------------------- 1 | wrap_mpi.o: wrap_mpi.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 3 | fft99.o: fft99.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 5 | -------------------------------------------------------------------------------- /config/cesm/machines/README: -------------------------------------------------------------------------------- 1 | config_pes_pop.xml 2 | current assumptions: 3 | prognostic: pop, cice 4 | data: datm, drof 5 | stub: slnd, sglc 6 | DATM.+XLND.+CICE.+POP.+DROF.+SGLC 7 | The current attributes that are supported are 8 | lcompset_matchN= (where N can be any number) 9 | pecount=[S,M,L,XL] 10 | 11 | Please refer to the documentation in the config_machines.xml and config_compilers.xml files. 12 | 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /config/e3sm/config_inputdata.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | wget 7 |
https://web.lcrc.anl.gov/public/e3sm/inputdata/
8 |
9 | 10 | svn 11 |
https://acme-svn2.ornl.gov/acme-repo/acme/inputdata
12 |
13 | 14 | svn 15 |
https://svn-ccsm-inputdata.cgd.ucar.edu/trunk/inputdata
16 |
17 | 18 |
19 | -------------------------------------------------------------------------------- /config/e3sm/machines/Depends.cray: -------------------------------------------------------------------------------- 1 | NOOPTOBJS= ice_boundary.o dyn_comp.o 2 | 3 | $(NOOPTOBJS): %.o: %.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 5 | 6 | -------------------------------------------------------------------------------- /config/e3sm/machines/Depends.gnu: -------------------------------------------------------------------------------- 1 | geopk.o:geopk.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS) $(FREEFLAGS) -fcray-pointer $< 3 | -------------------------------------------------------------------------------- /config/e3sm/machines/Depends.nag: -------------------------------------------------------------------------------- 1 | wrap_mpi.o: wrap_mpi.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 3 | fft99.o: fft99.F90 4 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 5 | -------------------------------------------------------------------------------- /config/e3sm/machines/Depends.titan.cray: -------------------------------------------------------------------------------- 1 | dyn_comp.o: dyn_comp.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 3 | 4 | ice_boundary.o: ice_boundary.F90 5 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 6 | 7 | POP_HaloMod.o: POP_HaloMod.F90 8 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 9 | 10 | -------------------------------------------------------------------------------- /config/e3sm/machines/Depends.titan.intel: -------------------------------------------------------------------------------- 1 | shr_dmodel_mod.o: shr_dmodel_mod.F90 2 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 3 | 4 | shr_scam_mod.o: shr_scam_mod.F90 5 | $(FC) -c $(INCLDIR) $(INCS) $(FFLAGS_NOOPT) $(FREEFLAGS) $< 6 | -------------------------------------------------------------------------------- /config/e3sm/machines/README: -------------------------------------------------------------------------------- 1 | Please refer to the documentation in the config_machines.xml and config_compilers.xml files. 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /config/e3sm/machines/syslog.noop: -------------------------------------------------------------------------------- 1 | #!/bin/csh -f 2 | # "no op" syslog script: 3 | # mach_syslog 4 | 5 | # set sec = 0 6 | set sample_interval = $1 7 | set jid = $2 8 | set lid = $3 9 | set run = $4 10 | set timing = $5 11 | set dir = $6 12 | 13 | # while (1) 14 | # sleep $sample_interval 15 | # end 16 | 17 | -------------------------------------------------------------------------------- /config/e3sm/testmods_dirs/allactive/force_netcdf_pio/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange PIO_TYPENAME=netcdf 2 | -------------------------------------------------------------------------------- /config/e3sm/testmods_dirs/allactive/mach_mods/shell_commands: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | if [ `./xmlquery --value MACH` == melvin ]; then ./xmlchange --id NTHRDS --val 1; fi 3 | -------------------------------------------------------------------------------- /config/e3sm/testmods_dirs/allactive/v1cmip6/README: -------------------------------------------------------------------------------- 1 | These modifications should result in a case that has the same namelist settings as the 2 | v1 low-res CMIP6 production runs. 3 | 4 | Run these for at least 1 day to see all output. 5 | Also use the CMIP6 compsets. 6 | If running longer, change the nhtfrq for the first history file. 7 | -------------------------------------------------------------------------------- /config/e3sm/testmods_dirs/allactive/v1cmip6/shell_commands: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | ./xmlchange --append CAM_CONFIG_OPTS='-cosp' 3 | ./xmlchange --id BUDGETS --val TRUE 4 | ./xmlchange PIO_TYPENAME=netcdf 5 | if [ `./xmlquery --value MACH` == cetus ]||[ `./xmlquery --value MACH` == mira ]; then sed s/64M/128M/ env_mach_specific.xml >tmp && mv tmp env_mach_specific.xml; fi 6 | 7 | -------------------------------------------------------------------------------- /config/e3sm/usermods_dirs/README: -------------------------------------------------------------------------------- 1 | Add subdirectories with mods for allactive cases. 2 | -------------------------------------------------------------------------------- /config/xml_schemas/env_archive.xsd: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /doc/.gitignore: -------------------------------------------------------------------------------- 1 | # Ignore auto-generated documentation for the addendum 2 | source/Tools_user/*.rst 3 | source/Tools_api 4 | source/CIME_api 5 | -------------------------------------------------------------------------------- /doc/source/Tools_user/index.rst.template: -------------------------------------------------------------------------------- 1 | .. _Tools_user: 2 | 3 | ########## 4 | User Tools 5 | ########## 6 | 7 | CIME includes a number of user scripts. Some of these scripts are copied into 8 | the CASEROOT as part of **create_newcase**, **create_test**, **create_clone**, 9 | and **case.setup**. 10 | 11 | .. toctree:: 12 | :maxdepth: 1 13 | 14 | 15 | 16 | -------------------------------------------------------------------------------- /doc/source/_static: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/doc/source/_static -------------------------------------------------------------------------------- /doc/source/build_cpl/introduction.rst: -------------------------------------------------------------------------------- 1 | Introduction 2 | ============ 3 | 4 | Content to go here: 5 | 6 | How to add a new component model to cime. 7 | 8 | How to replace an existing cime model with another one. 9 | 10 | How to integrate your model in to the cime build/configure system and coupler. 11 | 12 | How to work with the CIME-supplied models. 13 | 14 | What to do if you want to add another component to the long name. 15 | -------------------------------------------------------------------------------- /doc/source/driver_cpl/cplug-02.1-figx1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/doc/source/driver_cpl/cplug-02.1-figx1.jpg -------------------------------------------------------------------------------- /doc/source/driver_cpl/implementation.rst: -------------------------------------------------------------------------------- 1 | Implementation 2 | ============== 3 | 4 | .. toctree:: 5 | :maxdepth: 3 6 | 7 | time-management.rst 8 | grids.rst 9 | initialization-and-restart.rst 10 | driver_threading_control.rst 11 | bit-for-bit-flag.rst 12 | history-and-restarts.rst 13 | budgets.rst 14 | multi-instance.rst 15 | namelist-overview.rst 16 | -------------------------------------------------------------------------------- /doc/source/driver_cpl/index.rst: -------------------------------------------------------------------------------- 1 | .. _driver-cpl: 2 | 3 | .. on documentation master file, created by 4 | sphinx-quickstart on Tue Jan 31 19:46:36 2017. 5 | You can adapt this file completely to your liking, but it should at least 6 | contain the root `toctree` directive. 7 | 8 | ####################### 9 | Driver/Coupler 10 | ####################### 11 | 12 | .. toctree:: 13 | :maxdepth: 3 14 | :numbered: 15 | 16 | introduction.rst 17 | design.rst 18 | implementation.rst 19 | 20 | Indices and tables 21 | ================== 22 | 23 | * :ref:`genindex` 24 | * :ref:`modindex` 25 | * :ref:`search` 26 | 27 | -------------------------------------------------------------------------------- /doc/source/xml_files/components.rst: -------------------------------------------------------------------------------- 1 | .. _components: 2 | 3 | ########################################## 4 | Data, Stub and Driver Component XML Files 5 | ########################################## 6 | 7 | Component XML files in CIMEROOT/src sub-directories. 8 | 9 | .. toctree:: 10 | :maxdepth: 2 11 | 12 | atmosphere.rst 13 | esp.rst 14 | land.rst 15 | landice.rst 16 | ocean.rst 17 | river.rst 18 | seaice.rst 19 | wave.rst 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /doc/tools_autodoc.cfg: -------------------------------------------------------------------------------- 1 | [tools] 2 | tools_dir: ../scripts/Tools 3 | exclude_files: __init__.py load.awk standard_script_setup.py Makefile 4 | exclude_ext: ~ pyc 5 | exclude_prefix: JENKINS_ 6 | 7 | [scripts] 8 | scripts_dir: ../scripts 9 | exclude_files: 10 | exclude_ext: ~ pyc 11 | exclude_prefix: 12 | 13 | [templates] 14 | templates_dir: ../config/cesm/machines 15 | exclude_files: userdefined_laptop_template README 16 | exclude_ext: ~ pyc txt xml 17 | exclude_prefix: Depends 18 | 19 | [doc] 20 | doc_dir: ./source/Tools_user 21 | index_template: index.rst.template -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | CIME Documentation 4 | 5 | 6 | 7 | 8 | 9 | If you are not redirected automatically, click doc/build/html/index.html 10 | 11 | -------------------------------------------------------------------------------- /scripts/Tools/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/Tools/__init__.py -------------------------------------------------------------------------------- /scripts/Tools/advanced-py-prof: -------------------------------------------------------------------------------- 1 | #! /bin/bash -e 2 | 3 | if [ "$#" -eq 0 ]; then 4 | echo "Usage: advanced-py-prof " 5 | exit 0 6 | fi 7 | 8 | # Requires graphviz and gprof2dot 9 | 10 | DATE_STAMP=$(date "+%Y-%m-%d_%H%M%S") 11 | FILE_BASENAME=$(basename $1).${DATE_STAMP} 12 | python -m cProfile -o ${FILE_BASENAME}.prof "$@" 13 | gprof2dot -f pstats ${FILE_BASENAME}.prof -o ${FILE_BASENAME}.dot || { echo "This tool requires gprof2dot"; exit 1; } 14 | dot -Teps ${FILE_BASENAME}.dot -o ${FILE_BASENAME}.eps || { echo "This tool requires graphviz (dot)"; exit 1; } 15 | -------------------------------------------------------------------------------- /scripts/Tools/jenkins_script: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # 4 | # Wrapper around jenkins_generic_job that will allow output 5 | # from that script to always be printed to the screen and 6 | # recoverable if Jenkins is forced to kill the job. This is the 7 | # script that should be used from Jenkins. 8 | # 9 | 10 | SCRIPT_DIR=$( cd "$( dirname "$0" )" && pwd ) 11 | DATE_STAMP=$(date "+%Y-%m-%d_%H%M%S") 12 | export JENKINS_START_TIME=$(date "+%s") 13 | 14 | umask 002 15 | 16 | $SCRIPT_DIR/jenkins_generic_job --submit-to-cdash "$@" >& JENKINS_$DATE_STAMP 17 | -------------------------------------------------------------------------------- /scripts/Tools/simple-py-prof: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | if [ "$#" -eq 0 ]; then 4 | echo "Usage: simple-py-prof " 5 | echo "" 6 | echo "This will produce a file called 'profile'." 7 | echo "To turn this data into a graph, use the following command:" 8 | echo " gprof2dot -f pstats profile -o profile.dot" 9 | echo "" 10 | echo "To make the graph more easily viewable, convert to PDF:" 11 | echo "dot -Tpdf profile.dot -o profile.pdf" 12 | exit 0 13 | fi 14 | 15 | DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 16 | export PYTHONPATH=$DIR:$DIR/../lib:$PYTHONPATH 17 | 18 | python -m cProfile -s time -o profile "$@" 19 | -------------------------------------------------------------------------------- /scripts/Tools/standard_script_setup.py: -------------------------------------------------------------------------------- 1 | """ 2 | Encapsulate the importing of python utils and logging setup, things 3 | that every script should do. 4 | """ 5 | # pylint: disable=unused-import 6 | 7 | import sys, os 8 | import __main__ as main 9 | _CIMEROOT = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..","..") 10 | _LIB_DIR = os.path.join(_CIMEROOT, "scripts", "lib") 11 | sys.path.append(_LIB_DIR) 12 | 13 | # Important: Allows external tools to link up with CIME 14 | os.environ["CIMEROOT"] = _CIMEROOT 15 | 16 | import CIME.utils 17 | CIME.utils.check_minimum_python_version(2, 7) 18 | CIME.utils.stop_buffering_output() 19 | import logging, argparse 20 | -------------------------------------------------------------------------------- /scripts/climate_reproducibility/requirements.txt: -------------------------------------------------------------------------------- 1 | six 2 | numpy 3 | scipy 4 | pandas 5 | netCDF4 6 | matplotlib 7 | evv4esm>=0.1.1 8 | livvkit>=2.1.6 9 | json_tricks==3.11.0 10 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/src/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Append sources from this directory to the list. 2 | list(APPEND circle_area_sources circle.F90) 3 | 4 | # Export source list to parent (in CMake, "export" means something 5 | # different). 6 | sourcelist_to_parent(circle_area_sources) 7 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/src/circle.F90: -------------------------------------------------------------------------------- 1 | module circle 2 | 3 | integer, parameter :: r8 = selected_real_kind(12) 4 | real(r8), parameter :: pi = 3.14159265358979323846_r8 5 | 6 | contains 7 | 8 | function circle_area(r) 9 | real(r8), intent(in) :: r 10 | real(r8) :: circle_area 11 | 12 | circle_area = pi*r*r 13 | 14 | end function circle_area 15 | 16 | end module circle 17 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/tests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | 3 | list(APPEND CMAKE_MODULE_PATH ${CIME_CMAKE_MODULE_DIRECTORY}) 4 | include(CIME_initial_setup) 5 | 6 | project(circle_area_tests Fortran C) 7 | 8 | include(CIME_utils) 9 | 10 | add_subdirectory(../src circle) 11 | 12 | add_subdirectory(CTest) 13 | 14 | add_subdirectory(pFUnit) 15 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/tests/CTest/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Local files (just the test driver in this case). 2 | set(test_sources test_driver.F90) 3 | 4 | # Add sources we need from other directories (just circle.F90 in this 5 | # case). 6 | set(sources_needed circle.F90) 7 | extract_sources("${sources_needed}" "${circle_area_sources}" test_sources) 8 | 9 | add_executable(CTest_circle_exe ${test_sources}) 10 | 11 | add_test(circle_area CTest_circle_exe) 12 | 13 | # Tell CTest how to figure out that "STOP 1" fails for the current 14 | # compiler. 15 | define_Fortran_stop_failure(circle_area) 16 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/tests/CTest/test_driver.F90: -------------------------------------------------------------------------------- 1 | program test_driver 2 | 3 | use circle, only: circle_area, pi, r8 4 | 5 | implicit none 6 | 7 | ! Roundoff level tolerance. 8 | real(r8), parameter :: tol = 1.e-15_r8 9 | 10 | call assert(abs(pi - circle_area(1.0_r8)) <= tol, "Circle has wrong area.") 11 | 12 | contains 13 | 14 | subroutine assert(val, msg) 15 | logical, intent(in) :: val 16 | character(len=*), intent(in) :: msg 17 | 18 | if (.not. val) then 19 | print *, msg 20 | stop 1 21 | end if 22 | 23 | end subroutine assert 24 | 25 | end program test_driver 26 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/tests/pFUnit/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(sources_needed circle.F90) 2 | extract_sources("${sources_needed}" "${circle_area_sources}" test_sources) 3 | 4 | create_pFUnit_test(pFunit_circle_area pFunittest_circle_area_exe "test_circle.pf" ${test_sources}) 5 | 6 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/circle_area/tests/pFUnit/test_circle.pf: -------------------------------------------------------------------------------- 1 | module test_circle 2 | 3 | use pfunit_mod 4 | 5 | use circle, only: circle_area, pi, r8 6 | 7 | implicit none 8 | 9 | ! Roundoff level tolerance. 10 | real(r8), parameter :: tol = 1.e-15_r8 11 | 12 | contains 13 | 14 | @Test 15 | subroutine test_circle_area() 16 | 17 | @assertEqual(pi, circle_area(1.0_r8), tolerance=tol) 18 | 19 | end subroutine test_circle_area 20 | 21 | end module test_circle 22 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/interpolate_1d/src/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND interpolate_sources interpolate_1d.F90) 2 | 3 | sourcelist_to_parent(interpolate_sources) 4 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/interpolate_1d/tests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | cmake_minimum_required(VERSION 2.8) 2 | 3 | list(APPEND CMAKE_MODULE_PATH ${CIME_CMAKE_MODULE_DIRECTORY}) 4 | include(CIME_initial_setup) 5 | 6 | project(interpolate_1d_tests Fortran C) 7 | 8 | include(CIME_utils) 9 | 10 | add_subdirectory(../src interpolate_1d) 11 | 12 | add_subdirectory(CTest) 13 | 14 | add_subdirectory(pFUnit) 15 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/interpolate_1d/tests/CTest/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(test_sources test_driver.F90) 2 | 3 | extract_sources("interpolate_1d.F90" "${interpolate_sources}" test_sources) 4 | 5 | add_executable(CTest_interpolate_exe ${test_sources}) 6 | 7 | add_test(interpolate CTest_interpolate_exe) 8 | 9 | define_Fortran_stop_failure(interpolate) 10 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/interpolate_1d/tests/pFUnit/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | extract_sources("interpolate_1d.F90" "${interpolate_sources}" test_sources) 2 | create_pFUnit_test(pFunit_interpolate pFunit_interpolate_exe "test_interpolate_point.pf" ${test_sources}) 3 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/Examples/test_list.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | circle_area/tests 5 | 6 | 7 | interpolate_1d/tests 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /scripts/fortran_unit_testing/python/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | -------------------------------------------------------------------------------- /scripts/lib/CIME/BuildTools/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/BuildTools/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/Servers/__init__.py: -------------------------------------------------------------------------------- 1 | #pylint: disable=import-error 2 | from distutils.spawn import find_executable 3 | has_gftp = find_executable("globus-url-copy") 4 | has_svn = find_executable("svn") 5 | has_wget = find_executable("wget") 6 | has_ftp = True 7 | try: 8 | from ftplib import FTP 9 | except ImportError: 10 | has_ftp = False 11 | if has_ftp: 12 | from CIME.Servers.ftp import FTP 13 | if has_svn: 14 | from CIME.Servers.svn import SVN 15 | if has_wget: 16 | from CIME.Servers.wget import WGET 17 | if has_gftp: 18 | from CIME.Servers.gftp import GridFTP 19 | -------------------------------------------------------------------------------- /scripts/lib/CIME/SystemTests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/SystemTests/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/SystemTests/rep.py: -------------------------------------------------------------------------------- 1 | """ 2 | Implementation of the CIME REP test 3 | 4 | This test verifies that two identical runs give bit-for-bit results 5 | """ 6 | 7 | from CIME.SystemTests.system_tests_compare_two import SystemTestsCompareTwo 8 | 9 | class REP(SystemTestsCompareTwo): 10 | 11 | def __init__(self, case): 12 | SystemTestsCompareTwo.__init__(self, case, 13 | separate_builds = False, 14 | run_two_suffix = 'rep2') 15 | 16 | def _case_one_setup(self): 17 | pass 18 | 19 | def _case_two_setup(self): 20 | pass 21 | -------------------------------------------------------------------------------- /scripts/lib/CIME/SystemTests/sms.py: -------------------------------------------------------------------------------- 1 | """ 2 | CIME smoke test This class inherits from SystemTestsCommon 3 | It does a startup run with restarts off and optionally compares to or generates baselines 4 | """ 5 | 6 | from CIME.XML.standard_module_setup import * 7 | from CIME.SystemTests.system_tests_common import SystemTestsCommon 8 | 9 | logger = logging.getLogger(__name__) 10 | 11 | class SMS(SystemTestsCommon): 12 | 13 | def __init__(self, case): 14 | """ 15 | initialize an object interface to the SMS system test 16 | """ 17 | SystemTestsCommon.__init__(self, case) 18 | -------------------------------------------------------------------------------- /scripts/lib/CIME/SystemTests/test_utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/SystemTests/test_utils/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/XML/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/XML/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/XML/env_build.py: -------------------------------------------------------------------------------- 1 | """ 2 | Interface to the env_build.xml file. This class inherits from EnvBase 3 | """ 4 | from CIME.XML.standard_module_setup import * 5 | 6 | from CIME.XML.env_base import EnvBase 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | class EnvBuild(EnvBase): 11 | # pylint: disable=unused-argument 12 | def __init__(self, case_root=None, infile="env_build.xml",components=None): 13 | """ 14 | initialize an object interface to file env_build.xml in the case directory 15 | """ 16 | schema = os.path.join(get_cime_root(), "config", "xml_schemas", "env_entry_id.xsd") 17 | EnvBase.__init__(self, case_root, infile, schema=schema) 18 | -------------------------------------------------------------------------------- /scripts/lib/CIME/XML/env_case.py: -------------------------------------------------------------------------------- 1 | """ 2 | Interface to the env_case.xml file. This class inherits from EnvBase 3 | """ 4 | from CIME.XML.standard_module_setup import * 5 | 6 | from CIME.XML.env_base import EnvBase 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | class EnvCase(EnvBase): 11 | # pylint: disable=unused-argument 12 | def __init__(self, case_root=None, infile="env_case.xml", components=None): 13 | """ 14 | initialize an object interface to file env_case.xml in the case directory 15 | """ 16 | schema = os.path.join(get_cime_root(), "config", "xml_schemas", "env_entry_id.xsd") 17 | EnvBase.__init__(self, case_root, infile, schema=schema) 18 | -------------------------------------------------------------------------------- /scripts/lib/CIME/XML/env_run.py: -------------------------------------------------------------------------------- 1 | """ 2 | Interface to the env_run.xml file. This class inherits from EnvBase 3 | """ 4 | from CIME.XML.standard_module_setup import * 5 | 6 | from CIME.XML.env_base import EnvBase 7 | 8 | logger = logging.getLogger(__name__) 9 | 10 | class EnvRun(EnvBase): 11 | 12 | def __init__(self, case_root=None, infile="env_run.xml", components=None): 13 | """ 14 | initialize an object interface to file env_run.xml in the case directory 15 | """ 16 | self._components = components 17 | schema = os.path.join(get_cime_root(), "config", "xml_schemas", "env_entry_id.xsd") 18 | 19 | EnvBase.__init__(self, case_root, infile, schema=schema) 20 | -------------------------------------------------------------------------------- /scripts/lib/CIME/XML/standard_module_setup.py: -------------------------------------------------------------------------------- 1 | 2 | # pragma pylint: disable=unused-import 3 | 4 | import logging, os, sys, re 5 | 6 | LIB_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) 7 | sys.path.append(LIB_DIR) 8 | 9 | from CIME.utils import expect, run_cmd, run_cmd_no_fail, get_cime_root 10 | -------------------------------------------------------------------------------- /scripts/lib/CIME/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/case/README: -------------------------------------------------------------------------------- 1 | Files in this directory are members of the class Case defined in file case.py and should not be directly imported. -------------------------------------------------------------------------------- /scripts/lib/CIME/case/__init__.py: -------------------------------------------------------------------------------- 1 | from CIME.case.case import Case 2 | -------------------------------------------------------------------------------- /scripts/lib/CIME/tests/README: -------------------------------------------------------------------------------- 1 | The directory structure of this tests directory mirrors the directory structure 2 | of the parent (production code) directory. 3 | 4 | So, for example, unit tests for CIME/foo.py should live in 5 | CIME/tests/test_foo.py, and unit tests for CIME/SystemTests/bar.py should live 6 | in CIME/tests/SystemTests/test_bar.py. 7 | -------------------------------------------------------------------------------- /scripts/lib/CIME/tests/SystemTests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/tests/SystemTests/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/tests/SystemTests/test_utils/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/tests/SystemTests/test_utils/__init__.py -------------------------------------------------------------------------------- /scripts/lib/CIME/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/lib/CIME/tests/__init__.py -------------------------------------------------------------------------------- /scripts/lib/cs.status.template: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | /cs.status "$@" /*./TestStatus 4 | -------------------------------------------------------------------------------- /scripts/lib/cs.submit.template: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | for item in $(\ls -1 *./TestStatus); do 4 | cd $(dirname $item) 5 | && && 6 | cd - 7 | done 8 | -------------------------------------------------------------------------------- /scripts/lib/six_additions.py: -------------------------------------------------------------------------------- 1 | """Additions to the six library needed for python 2/3 compatibility""" 2 | 3 | import six 4 | 5 | if six.PY3: 6 | # This is only available in python3.2 and later, so this code won't 7 | # run with python3 versions prior to 3.2 8 | _assertNotRegex = "assertNotRegex" 9 | else: 10 | _assertNotRegex = "assertNotRegexpMatches" 11 | 12 | def assertNotRegex(self, *args, **kwargs): 13 | return getattr(self, _assertNotRegex)(*args, **kwargs) 14 | -------------------------------------------------------------------------------- /scripts/lib/testreporter.template: -------------------------------------------------------------------------------- 1 | #! /bin/bash 2 | 3 | /testreporter.py "$@" 4 | -------------------------------------------------------------------------------- /scripts/tests/cpl.hi1.nc.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/tests/cpl.hi1.nc.test -------------------------------------------------------------------------------- /scripts/tests/cpl.hi2.nc.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/tests/cpl.hi2.nc.test -------------------------------------------------------------------------------- /scripts/tests/cpl.log.failmemleak.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/tests/cpl.log.failmemleak.gz -------------------------------------------------------------------------------- /scripts/tests/cpl.log.passmemleak.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/scripts/tests/cpl.log.passmemleak.gz -------------------------------------------------------------------------------- /scripts/tests/user_mods_test1/include_user_mods: -------------------------------------------------------------------------------- 1 | # reference to another directory 2 | ../user_mods_test2 3 | -------------------------------------------------------------------------------- /scripts/tests/user_mods_test1/user_nl_comp: -------------------------------------------------------------------------------- 1 | some 2 | user 3 | nl changes 4 | -------------------------------------------------------------------------------- /scripts/tests/user_mods_test1/user_nl_cpl: -------------------------------------------------------------------------------- 1 | a cpl namelist option 2 | -------------------------------------------------------------------------------- /scripts/tests/user_mods_test2/SourceMods/src.drv/somefile.F90: -------------------------------------------------------------------------------- 1 | ! Just a test 2 | -------------------------------------------------------------------------------- /scripts/tests/user_mods_test2/user_nl_cpl: -------------------------------------------------------------------------------- 1 | a different cpl test option 2 | -------------------------------------------------------------------------------- /scripts/tests/user_mods_test3/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange PIO_VERSION=2 -------------------------------------------------------------------------------- /src/CMake/.gitignore: -------------------------------------------------------------------------------- 1 | CMakeCache.txt 2 | CMakeFiles 3 | Makefile 4 | cmake_install.cmake 5 | install_manifest.txt 6 | -------------------------------------------------------------------------------- /src/CMake/CESM_utils.cmake: -------------------------------------------------------------------------------- 1 | message("CESM_utils.cmake is deprecated, please replace references with CIME_utils.cmake") 2 | include(CIME_utils) -------------------------------------------------------------------------------- /src/CMake/CIME_initial_setup.cmake: -------------------------------------------------------------------------------- 1 | # Module used for CIME testing. 2 | # 3 | # This module does some initial setup that must be done BEFORE the 'project' 4 | # line in the main CMakeLists.txt file. 5 | 6 | include(${CMAKE_BINARY_DIR}/Macros.cmake RESULT_VARIABLE FOUND) 7 | if(NOT FOUND) 8 | message(FATAL_ERROR "You must generate a Macros.cmake file using CIME's configure") 9 | endif() 10 | if("$ENV{MPILIB}" STREQUAL "mpi-serial") 11 | set(CMAKE_C_COMPILER ${SCC}) 12 | set(CMAKE_Fortran_COMPILER ${SFC}) 13 | else() 14 | set(CMAKE_C_COMPILER ${MPICC}) 15 | set(CMAKE_Fortran_COMPILER ${MPIFC}) 16 | endif() 17 | -------------------------------------------------------------------------------- /src/CMake/ChangeLog: -------------------------------------------------------------------------------- 1 | This repository tracks changes using the Git log. 2 | 3 | For small changes, e.g. fixing typos, use a one line, 50 character summary. 4 | 5 | For larger changes, this summary should be followed by a blank line and a 6 | longer description. The following link gives good advice: 7 | 8 | http://justinhileman.info/article/changing-history/#make-the-most-of-your-commit-message 9 | -------------------------------------------------------------------------------- /src/CMake/TryCSizeOf.f90: -------------------------------------------------------------------------------- 1 | program trycsizeof 2 | use iso_c_binding, only : c_sizeof 3 | integer :: b 4 | integer :: a(5) 5 | b = c_sizeof(a(1)) 6 | end program trycsizeof 7 | -------------------------------------------------------------------------------- /src/CMake/TryMPIIO.f90: -------------------------------------------------------------------------------- 1 | program mpicheck 2 | include "mpif.h" 3 | integer :: fh, ierr 4 | 5 | call mpi_file_open(mpi_comm_world, 'stupid.file',MPI_MODE_RDWR,MPI_INFO_NULL,fh,ierr) 6 | end program 7 | -------------------------------------------------------------------------------- /src/CMake/TryMPIMod.f90: -------------------------------------------------------------------------------- 1 | program mpimodcheck 2 | use mpi, only : MPI_ROOT, MPI_OFFSET 3 | integer,parameter:: a = MPI_ROOT 4 | end program mpimodcheck 5 | -------------------------------------------------------------------------------- /src/CMake/TryMPISERIAL.f90: -------------------------------------------------------------------------------- 1 | ! Test for the mct mpiserial library 2 | ! in which mpi_cart is not defined (and likely never will be) 3 | ! Failure to compile means mpi-serial is being used. 4 | ! 5 | program mpiserial_test 6 | implicit none 7 | include 'mpif.h' 8 | integer :: i 9 | select case(i) 10 | case(mpi_cart) 11 | end select 12 | end program mpiserial_test 13 | -------------------------------------------------------------------------------- /src/CMake/TryPnetcdf_inc.f90: -------------------------------------------------------------------------------- 1 | program freeform 2 | include "pnetcdf.inc" 3 | end program 4 | -------------------------------------------------------------------------------- /src/CMake/TryPnetcdf_mod.f90: -------------------------------------------------------------------------------- 1 | program freeform 2 | use pnetcdf 3 | integer ierr 4 | ierr = nfmpi_put_att(4, 1, 'fred', 7) 5 | end program 6 | -------------------------------------------------------------------------------- /src/components/data_comps/datm/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/datm/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | r 4 | unset 5 | 6 | rpointer.atm$NINST_STRING 7 | $CASE.datm$NINST_STRING.r.$DATENAME.nc,$CASE.datm$NINST_STRING.rs1.$DATENAME.bin 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/components/data_comps/datm/doc/SOM.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/components/data_comps/datm/doc/SOM.pdf -------------------------------------------------------------------------------- /src/components/data_comps/datm/doc/rundocbook.csh: -------------------------------------------------------------------------------- 1 | #!/bin/csh 2 | 3 | if (-e ./ug.pdf) then 4 | if (-e ./ug.pdf.prev) rm -f ./ug.pdf.prev 5 | mv ./ug.pdf ./ug.pdf.prev 6 | endif 7 | 8 | mv index.html index.html.hold 9 | rm *.html 10 | mv index.html.hold index.html 11 | docbook2html ug.xml 12 | docbook2pdf ug.xml 13 | chgrp cgdcsmweb * 14 | chmod g+w * 15 | -------------------------------------------------------------------------------- /src/components/data_comps/desp/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/dice/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/dlnd/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/dlnd/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | r 4 | unset 5 | 6 | rpointer.lnd$NINST_STRING 7 | $CASE.dlnd$NINST_STRING.r.$DATENAME.nc,$CASE.dlnd$NINST_STRING.rs1.$DATENAME.bin 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/components/data_comps/docn/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/docn/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | rs*\d* 4 | unset 5 | 6 | rpointer.ocn$NINST_STRING 7 | $CASE.docn$NINST_STRING.r.$DATENAME.nc,$CASE.docn$NINST_STRING.rs1.$DATENAME.bin 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /src/components/data_comps/docn/tools/pop_som_frc/SOM.doc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/components/data_comps/docn/tools/pop_som_frc/SOM.doc -------------------------------------------------------------------------------- /src/components/data_comps/docn/tools/pop_som_frc/SOM.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/components/data_comps/docn/tools/pop_som_frc/SOM.pdf -------------------------------------------------------------------------------- /src/components/data_comps/drof/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/drof/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | r 4 | unset 5 | 6 | rpointer.rof$NINST_STRING 7 | $CASE.drof$NINST_STRING.r.$DATENAME.nc,$CASE.drof$NINST_STRING.rs1.$DATENAME.bin 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/components/data_comps/dwav/README: -------------------------------------------------------------------------------- 1 | QL, 150527 2 | read climatological enhancement factor for 3 | Langmuir mixing parameterization (vr12-ma) 4 | and Surface Stokes drift 5 | -------------------------------------------------------------------------------- /src/components/data_comps/dwav/bld/README: -------------------------------------------------------------------------------- 1 | QL, 150527, all files adapted from drof/bld and docn/bld 2 | 150612, now read enhancement factor, ustokes and vstokes 3 | -------------------------------------------------------------------------------- /src/components/data_comps/dwav/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/data_comps/dwav/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | r 4 | unset 5 | 6 | rpointer.wav$NINST_STRING 7 | $CASE.dwav$NINST_STRING.r.$DATENAME.nc,$CASE.dwav$NINST_STRING.rs1.$DATENAME.bin 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /src/components/stub_comps/satm/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/satm/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/satm/nuopc/atm_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module atm_comp_nuopc 2 | 3 | ! This is only needed here to satisfy the current cime build requirements 4 | public :: SetServices 5 | 6 | contains 7 | 8 | subroutine SetServices(gcomp, rc) 9 | use ESMF, only : ESMF_GridComp 10 | implicit none 11 | type(ESMF_GridComp) :: gcomp 12 | integer, intent(out) :: rc 13 | end subroutine SetServices 14 | 15 | 16 | end module atm_comp_nuopc 17 | -------------------------------------------------------------------------------- /src/components/stub_comps/sesp/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/sesp/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/sglc/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/sglc/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/sglc/nuopc/glc_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module glc_comp_nuopc 2 | 3 | ! This is only needed here to satisfy the current cime build requirements 4 | contains 5 | subroutine SetServices(gcomp, rc) 6 | use ESMF, only : ESMF_GridComp 7 | implicit none 8 | type(ESMF_GridComp) :: gcomp 9 | integer, intent(out) :: rc 10 | end subroutine SetServices 11 | 12 | end module glc_comp_nuopc 13 | -------------------------------------------------------------------------------- /src/components/stub_comps/sice/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/sice/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/sice/nuopc/ice_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module ice_comp_nuopc 2 | 3 | ! This is only needed here to satisfy the current cime build requirements 4 | public :: SetServices 5 | 6 | contains 7 | 8 | subroutine SetServices(gcomp, rc) 9 | use ESMF, only : ESMF_GridComp 10 | implicit none 11 | type(ESMF_GridComp) :: gcomp 12 | integer, intent(out) :: rc 13 | end subroutine SetServices 14 | 15 | end module ice_comp_nuopc 16 | -------------------------------------------------------------------------------- /src/components/stub_comps/slnd/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/slnd/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/slnd/nuopc/lnd_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module lnd_comp_nuopc 2 | 3 | ! This is only needed here to satisfy the current cime build requirements 4 | public :: SetServices 5 | 6 | contains 7 | 8 | subroutine SetServices(gcomp, rc) 9 | use ESMF, only : ESMF_GridComp 10 | implicit none 11 | type(ESMF_GridComp) :: gcomp 12 | integer, intent(out) :: rc 13 | end subroutine SetServices 14 | 15 | 16 | end module lnd_comp_nuopc 17 | -------------------------------------------------------------------------------- /src/components/stub_comps/socn/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/socn/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/socn/nuopc/ocn_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module ocn_comp_nuopc 2 | contains 3 | ! This is only needed here to satisfy the current cime build requirements 4 | subroutine SetServices(gcomp, rc) 5 | use ESMF, only : ESMF_GridComp 6 | implicit none 7 | type(ESMF_GridComp) :: gcomp 8 | integer, intent(out) :: rc 9 | end subroutine SetServices 10 | 11 | end module ocn_comp_nuopc 12 | -------------------------------------------------------------------------------- /src/components/stub_comps/srof/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/srof/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/srof/nuopc/rof_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module rof_comp_nuopc 2 | 3 | ! This is only needed here to satisfy the current cime build requirements 4 | public :: SetServices 5 | 6 | contains 7 | 8 | subroutine SetServices(gcomp, rc) 9 | use ESMF, only : ESMF_GridComp 10 | implicit none 11 | type(ESMF_GridComp) :: gcomp 12 | integer, intent(out) :: rc 13 | end subroutine SetServices 14 | 15 | 16 | end module rof_comp_nuopc 17 | -------------------------------------------------------------------------------- /src/components/stub_comps/swav/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/stub_comps/swav/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """ 4 | build stub model namelist 5 | """ 6 | # DO NOTHING 7 | #pylint: disable=unused-argument 8 | def buildnml(case, caseroot, compname): 9 | pass 10 | -------------------------------------------------------------------------------- /src/components/stub_comps/swav/nuopc/wav_comp_nuopc.F90: -------------------------------------------------------------------------------- 1 | module wav_comp_nuopc ! This is only needed here to satisfy the current cime build requirements 2 | public :: SetServices 3 | contains 4 | subroutine SetServices(gcomp, rc) 5 | use ESMF, only : ESMF_GridComp 6 | implicit none 7 | type(ESMF_GridComp) :: gcomp 8 | integer, intent(out) :: rc 9 | end subroutine SetServices 10 | end module wav_comp_nuopc 11 | -------------------------------------------------------------------------------- /src/components/xcpl_comps/xatm/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xglc/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xice/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xlnd/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xocn/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xrof/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/components/xcpl_comps/xwav/cime_config/buildlib: -------------------------------------------------------------------------------- 1 | ../../../../build_scripts/buildlib.internal_components -------------------------------------------------------------------------------- /src/drivers/mct/cime_config/testdefs/testmods_dirs/drv/5steps/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange STOP_OPTION="nsteps" 2 | 3 | -------------------------------------------------------------------------------- /src/drivers/mct/cime_config/testdefs/testmods_dirs/drv/default/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange HIST_OPTION=ndays 2 | ./xmlchange HIST_N=1 3 | -------------------------------------------------------------------------------- /src/drivers/mct/cime_config/testdefs/testmods_dirs/drv/som/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange DOCN_SOM_FILENAME="pop_frc.1x1d.090130.nc" 2 | 3 | -------------------------------------------------------------------------------- /src/drivers/mct/cime_config/testdefs/testmods_dirs/drv/y100k/README: -------------------------------------------------------------------------------- 1 | This tests the ability to use 6-digit years. 2 | 3 | As of the time this test was created, the max year is about 214747 - 4 | otherwise we exceed the limit of 4-byte integers when storing dates as 5 | integers (yyyyyymmdd). 6 | -------------------------------------------------------------------------------- /src/drivers/mct/cime_config/testdefs/testmods_dirs/drv/y100k/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange RUN_STARTDATE=99999-12-28 2 | -------------------------------------------------------------------------------- /src/drivers/mct/main/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND drv_sources 2 | component_type_mod.F90 3 | map_glc2lnd_mod.F90 4 | map_lnd2rof_irrig_mod.F90 5 | seq_map_mod.F90 6 | seq_map_type_mod.F90 7 | ) 8 | 9 | sourcelist_to_parent(drv_sources) 10 | -------------------------------------------------------------------------------- /src/drivers/mct/shr/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND drv_sources 2 | glc_elevclass_mod.F90 3 | seq_cdata_mod.F90 4 | seq_comm_mct.F90 5 | seq_infodata_mod.F90 6 | seq_io_read_mod.F90 7 | seq_pauseresume_mod.F90 8 | ) 9 | 10 | sourcelist_to_parent(drv_sources) 11 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/avect_wrapper_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | create_pFUnit_test(avect_wrapper avect_wrapper_exe 2 | "test_avect_wrapper.pf" "") 3 | 4 | target_link_libraries(avect_wrapper_exe ${DRV_UNIT_TEST_LIBS}) 5 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/check_fields_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | create_pFUnit_test(check_fields check_fields_exe 2 | "test_check_fields.pf" "") 3 | 4 | target_link_libraries(check_fields_exe ${DRV_UNIT_TEST_LIBS}) 5 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/glc_elevclass_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | create_pFUnit_test(glc_elevclass glc_elevclass_exe 2 | "test_glc_elevclass.pf" "") 3 | 4 | target_link_libraries(glc_elevclass_exe ${DRV_UNIT_TEST_LIBS}) 5 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/map_glc2lnd_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set (pfunit_sources 2 | test_map_glc2lnd.pf 3 | ) 4 | 5 | create_pFUnit_test(map_glc2lnd map_glc2lnd_exe 6 | "${pfunit_sources}" "") 7 | 8 | target_link_libraries(map_glc2lnd_exe ${DRV_UNIT_TEST_LIBS}) 9 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/map_lnd2rof_irrig_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set (pfunit_sources 2 | test_map_lnd2rof_irrig.pf 3 | ) 4 | 5 | create_pFUnit_test(map_lnd2rof_irrig map_lnd2rof_irrig_exe 6 | "${pfunit_sources}" "") 7 | 8 | target_link_libraries(map_lnd2rof_irrig_exe ${DRV_UNIT_TEST_LIBS}) 9 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/seq_map_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | create_pFUnit_test(seq_map seq_map_exe 2 | "test_seq_map.pf" "") 3 | 4 | target_link_libraries(seq_map_exe ${DRV_UNIT_TEST_LIBS}) 5 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/stubs/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND drv_sources 2 | seq_timemgr_mod.F90 3 | ) 4 | 5 | sourcelist_to_parent(drv_sources) -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/stubs/seq_timemgr_mod.F90: -------------------------------------------------------------------------------- 1 | module seq_timemgr_mod 2 | 3 | ! Stub for routines from seq_timemgr_mod that are needed by other modules built by the 4 | ! unit tests. 5 | 6 | implicit none 7 | private 8 | 9 | public :: seq_timemgr_pause_active 10 | 11 | contains 12 | 13 | logical function seq_timemgr_pause_active() 14 | ! Stub for seq_timemgr_pause_active - always returns .false. 15 | 16 | seq_timemgr_pause_active = .false. 17 | end function seq_timemgr_pause_active 18 | 19 | end module seq_timemgr_mod 20 | -------------------------------------------------------------------------------- /src/drivers/mct/unit_test/utils/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND drv_sources 2 | avect_wrapper_mod.F90 3 | create_mapper_mod.F90 4 | mct_wrapper_mod.F90 5 | simple_map_mod.F90 6 | ) 7 | 8 | sourcelist_to_parent(drv_sources) -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/buildnml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/buildnml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_archive.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_archive.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_component.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_component.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_component_cesm.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_component_cesm.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_component_e3sm.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_component_e3sm.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_compsets.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_compsets.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/config_pes.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/config_pes.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/namelist_definition_drv.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/namelist_definition_drv.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/namelist_definition_drv_flds.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/namelist_definition_drv_flds.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/namelist_definition_modelio.xml: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/namelist_definition_modelio.xml -------------------------------------------------------------------------------- /src/drivers/moab/cime_config/user_nl_cpl: -------------------------------------------------------------------------------- 1 | ../../mct/cime_config/user_nl_cpl -------------------------------------------------------------------------------- /src/drivers/moab/main/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ../../mct/main/CMakeLists.txt -------------------------------------------------------------------------------- /src/drivers/moab/main/cime_driver.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/cime_driver.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/map_glc2lnd_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/map_glc2lnd_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/map_lnd2glc_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/map_lnd2glc_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/map_lnd2rof_irrig_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/map_lnd2rof_irrig_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/mrg_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/mrg_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_aoflux_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_aoflux_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_glc_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_glc_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_ice_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_ice_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_lnd_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_lnd_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_ocn_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_ocn_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_rof_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_rof_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/prep_wav_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/prep_wav_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_diag_mct.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_diag_mct.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_domain_mct.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_domain_mct.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_flux_mct.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_flux_mct.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_frac_mct.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_frac_mct.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_hist_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_hist_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_io_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_io_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_map_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_map_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_map_type_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_map_type_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/seq_rest_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/seq_rest_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/main/t_driver_timers_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/main/t_driver_timers_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ../../mct/shr/CMakeLists.txt -------------------------------------------------------------------------------- /src/drivers/moab/shr/glc_elevclass_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/glc_elevclass_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_cdata_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_cdata_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_comm_mct.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_comm_mct.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_drydep_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_drydep_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_flds_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_flds_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_infodata_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_infodata_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_io_read_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_io_read_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/seq_timemgr_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/seq_timemgr_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/shr_carma_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/shr_carma_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/shr_expr_parser_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/shr_expr_parser_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/shr_fire_emis_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/shr_fire_emis_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/shr_megan_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/shr_megan_mod.F90 -------------------------------------------------------------------------------- /src/drivers/moab/shr/shr_ndep_mod.F90: -------------------------------------------------------------------------------- 1 | ../../mct/shr/shr_ndep_mod.F90 -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_config/testdefs/testmods_dirs/drv/5steps/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange STOP_OPTION="nsteps" 2 | 3 | -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_config/testdefs/testmods_dirs/drv/default/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange HIST_OPTION=ndays 2 | ./xmlchange HIST_N=1 3 | -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_config/testdefs/testmods_dirs/drv/glcnec10/include_user_mods: -------------------------------------------------------------------------------- 1 | ../default 2 | -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_config/testdefs/testmods_dirs/drv/glcnec10/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange GLC_NEC=10 -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_config/testdefs/testmods_dirs/drv/som/shell_commands: -------------------------------------------------------------------------------- 1 | ./xmlchange DOCN_SOM_FILENAME="pop_frc.1x1d.090130.nc" 2 | 3 | -------------------------------------------------------------------------------- /src/drivers/nuopc/cime_flds/shr_flds_mod.F90: -------------------------------------------------------------------------------- 1 | module shr_flds_mod 2 | 3 | use shr_nuopc_fldList_mod , only : shr_nuopc_fldList_type 4 | 5 | implicit none 6 | public 7 | 8 | end module shr_flds_mod 9 | -------------------------------------------------------------------------------- /src/drivers/nuopc/mediator/ESMFConvenienceMacros.h: -------------------------------------------------------------------------------- 1 | #if 0 2 | // ----------- ERROR handling macros ------------------------------------------ 3 | #endif 4 | 5 | #define ESMF_ERR_ABORT(rc) if (ESMF_LogFoundError(rc, msg="Aborting NEMS", line=__LINE__, file=__FILE__)) call ESMF_Finalize(endflag=ESMF_END_ABORT) 6 | 7 | #define ESMF_ERR_RETURN(rc,rcOut) if (ESMF_LogFoundError(rc, msg="Breaking out of subroutine", line=__LINE__, file=__FILE__, rcToReturn=rcOut)) return 8 | -------------------------------------------------------------------------------- /src/drivers/nuopc/mediator/ESMFVersionDefine.h: -------------------------------------------------------------------------------- 1 | #if 0 2 | // 3 | // Make this header file available as ESMFVersionDefine.h in order to build 4 | // NEMS against an ESMF installation that contains a reference level NUOPC Layer. 5 | // 6 | #endif 7 | 8 | #include "./ESMFConvenienceMacros.h" 9 | 10 | -------------------------------------------------------------------------------- /src/drivers/nuopc/shr/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND drv_sources 2 | glc_elevclass_mod.F90 3 | seq_cdata_mod.F90 4 | seq_comm_mct.F90 5 | seq_infodata_mod.F90 6 | seq_io_read_mod.F90 7 | ) 8 | 9 | sourcelist_to_parent(drv_sources) -------------------------------------------------------------------------------- /src/externals/mct/.gitignore: -------------------------------------------------------------------------------- 1 | Makefile.conf 2 | config.log 3 | config.status 4 | config.h 5 | autom4te.cache 6 | *.o 7 | *.mod 8 | lib*.a 9 | data 10 | -------------------------------------------------------------------------------- /src/externals/mct/COPYRIGHT: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/mct/COPYRIGHT -------------------------------------------------------------------------------- /src/externals/mct/benchmarks/.gitignore: -------------------------------------------------------------------------------- 1 | importBench 2 | RouterTestDis 3 | RouterTestOvr 4 | fort.* 5 | -------------------------------------------------------------------------------- /src/externals/mct/benchmarks/T42.8pR: -------------------------------------------------------------------------------- 1 | 8 2 | 1 3 | 8 4 | 8192 5 | 1 1024 0 6 | 1025 1024 1 7 | 2049 1024 2 8 | 3073 1024 3 9 | 4097 1024 4 10 | 5121 1024 5 11 | 6145 1024 6 12 | 7169 1024 7 13 | -------------------------------------------------------------------------------- /src/externals/mct/benchmarks/gx1.8pR: -------------------------------------------------------------------------------- 1 | 8 2 | 2 3 | 8 4 | 122880 5 | 1 15360 0 6 | 15361 15360 1 7 | 30721 15360 2 8 | 46081 15360 3 9 | 61441 15360 4 10 | 76801 15360 5 11 | 92161 15360 6 12 | 107521 15360 7 13 | -------------------------------------------------------------------------------- /src/externals/mct/doc/.gitignore: -------------------------------------------------------------------------------- 1 | *.toc 2 | *.log 3 | *.dvi 4 | *.aux 5 | *.blg 6 | *.bbl 7 | *.pdf 8 | -------------------------------------------------------------------------------- /src/externals/mct/doc/Makefile: -------------------------------------------------------------------------------- 1 | #!/bin/make 2 | #----------------------------------------------------------------------- 3 | # Documentation 4 | all: 5 | cd texsrc; make 6 | make apis 7 | 8 | html: 9 | latex2html -white -toc_depth 5 -split 4 -show_section_numbers \ 10 | -address "jacob@mcs.anl.gov" \ 11 | mct_APIs.tex 12 | apis: 13 | cd texsrc; make 14 | make apisdvi 15 | 16 | apisdvi: mct_APIs.dvi 17 | 18 | clean: 19 | cd texsrc; make clean 20 | rm -f *.dvi *.log *.bbl *.blg *.aux *.toc 21 | 22 | .SUFFIXES: .dvi .tex 23 | 24 | .tex.dvi: 25 | latex $*.tex 26 | 27 | #. 28 | -------------------------------------------------------------------------------- /src/externals/mct/doc/README: -------------------------------------------------------------------------------- 1 | 2 | To build the .dvi files for the documentation. type "make". 3 | 4 | This will build the API's document. 5 | 6 | To build the APIs, type "make apis" 7 | 8 | NOTE: this build system isn't working perfectly yet. It will 9 | build a .dvi file but you will need to run "bibtex" manually to 10 | build the bibliography. 11 | 12 | To build "by hand" using the design doc as an example: 13 | cd to texsrc, type "make" 14 | cd back to doc directory then do: 15 | 16 | latex mct_APIs 17 | bibtex mct_APIs 18 | latex mct_APIs 19 | latex mct_APIs 20 | 21 | -------------------------------------------------------------------------------- /src/externals/mct/doc/texsrc/.gitignore: -------------------------------------------------------------------------------- 1 | *.tex 2 | *.F90 3 | -------------------------------------------------------------------------------- /src/externals/mct/doc/texsrc/Makefile: -------------------------------------------------------------------------------- 1 | #!/bin/make 2 | 3 | TEXFILES = 4 | include SRCS_tex.mk 5 | 6 | PROTEXLOC = ../../protex/protex 7 | 8 | PROTEX = perl $(PROTEXLOC) -b # bare mode--no TOC 9 | 10 | #----------------------------------------------------------------------- 11 | # Documentation 12 | all: 13 | cp ../../mct/*.F90 . 14 | cp ../../mpeu/m_String.F90 . 15 | cp ../../mpeu/m_List.F90 . 16 | make doc 17 | 18 | doc: $(TEXFILES) 19 | 20 | clean: 21 | rm -f *.F90 22 | rm -f *.tex 23 | 24 | .SUFFIXES: .F90 .tex 25 | 26 | .F90.tex: 27 | $(PROTEX) $*.F90 > $*.tex 28 | 29 | #. 30 | -------------------------------------------------------------------------------- /src/externals/mct/examples/Makefile: -------------------------------------------------------------------------------- 1 | 2 | SHELL = /bin/sh 3 | 4 | SUBDIRS = simple climate_concur1 climate_sequen1 5 | 6 | # TARGETS 7 | subdirs: 8 | @for dir in $(SUBDIRS); do \ 9 | cd $$dir; \ 10 | $(MAKE); \ 11 | cd ..; \ 12 | done 13 | 14 | clean: 15 | @for dir in $(SUBDIRS); do \ 16 | cd $$dir; \ 17 | $(MAKE) clean; \ 18 | cd ..; \ 19 | done 20 | 21 | -------------------------------------------------------------------------------- /src/externals/mct/examples/climate_concur1/.gitignore: -------------------------------------------------------------------------------- 1 | climate 2 | *.mod 3 | poe.* 4 | *.script 5 | *.o* 6 | -------------------------------------------------------------------------------- /src/externals/mct/examples/climate_sequen1/.gitignore: -------------------------------------------------------------------------------- 1 | *.mod 2 | climate 3 | TS1out.dat 4 | *.script 5 | *.o* 6 | -------------------------------------------------------------------------------- /src/externals/mct/examples/climate_sequen1/dst.rc: -------------------------------------------------------------------------------- 1 | # Resource file for dst model 2 | # nx and ny:: global grid size in x and y 3 | 4 | nx: 320 5 | ny: 384 6 | decomp: R 7 | -------------------------------------------------------------------------------- /src/externals/mct/examples/climate_sequen1/src.rc: -------------------------------------------------------------------------------- 1 | # Resource file for src model 2 | # nx and ny:: global grid size in x and y 3 | 4 | nx: 128 5 | ny: 64 6 | decomp: R 7 | -------------------------------------------------------------------------------- /src/externals/mct/examples/simple/.gitignore: -------------------------------------------------------------------------------- 1 | twocon 2 | twoseq 3 | twosequn 4 | twoseqNB 5 | -------------------------------------------------------------------------------- /src/externals/mct/m4/README: -------------------------------------------------------------------------------- 1 | This directory contains some specific tests used in the MCT autoconf system. 2 | They are placed here to make the configure.ac a little cleaner. 3 | 4 | These are only needed if you are trying to recreate the "configure" script from 5 | the "configure.ac" file. 6 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/Makefile.conf.in: -------------------------------------------------------------------------------- 1 | CC = @CC@ 2 | FC = @FC@ 3 | FCFLAGS = @FCFLAGS@ 4 | INCLUDE = -I. 5 | INCFLAG = @INCLUDEFLAG@ 6 | DEFS = @DEFS@ 7 | CFLAGS = @CFLAGS@ 8 | AR = @AR@ 9 | RANLIB = @RANLIB@ 10 | LIBS = @LIBS@ 11 | CRULE = .c.o 12 | F90RULE = .F90.o 13 | 14 | SHELL = /bin/sh 15 | 16 | MODULE = mpi-serial 17 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/aclocal.m4: -------------------------------------------------------------------------------- 1 | # generated automatically by aclocal 1.10 -*- Autoconf -*- 2 | 3 | # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 4 | # 2005, 2006 Free Software Foundation, Inc. 5 | # This file is free software; the Free Software Foundation 6 | # gives unlimited permission to copy and/or distribute it, 7 | # with or without modifications, as long as this notice is preserved. 8 | 9 | # This program is distributed in the hope that it will be useful, 10 | # but WITHOUT ANY WARRANTY, to the extent permitted by law; without 11 | # even the implied warranty of MERCHANTABILITY or FITNESS FOR A 12 | # PARTICULAR PURPOSE. 13 | 14 | 15 | m4_include([m4/ax_fc_version.m4]) 16 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/error.c: -------------------------------------------------------------------------------- 1 | 2 | #include "mpiP.h" 3 | 4 | /* 5 | * Error handling code 6 | * Just a stub for now to support the MPI interface without actually 7 | * doing anything 8 | */ 9 | 10 | int MPI_Errhandler_set(MPI_Comm comm, MPI_Errhandler handle) 11 | { 12 | return(MPI_SUCCESS); 13 | } 14 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/ic_merge.c: -------------------------------------------------------------------------------- 1 | 2 | #include "mpiP.h" 3 | 4 | /* 5 | * MPI_Intercomm_merge - Creates an intracommunicator from an intercommunicator 6 | * This is just a stub for now to support mpi function calls even in Serial 7 | * applications. In the case of a serial program, this function is a no-op and 8 | * only ever returns MPI_SUCCESS 9 | */ 10 | 11 | int MPI_Intercomm_merge( MPI_Comm intercomm, int high, MPI_Comm *newintracomm ) 12 | { 13 | newintracomm = (MPI_Comm *)intercomm; 14 | return(MPI_SUCCESS); 15 | } 16 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/listP.h: -------------------------------------------------------------------------------- 1 | /* 2 | * (C) 2000 UNIVERSITY OF CHICAGO 3 | * See COPYRIGHT in top-level directory. 4 | */ 5 | 6 | 7 | 8 | /* 9 | * Private data structures for the list 10 | * 11 | */ 12 | 13 | 14 | typedef struct _List 15 | { 16 | pListitem head; 17 | pListitem tail; 18 | int count; 19 | } List; 20 | 21 | 22 | typedef struct _Listitem 23 | { 24 | void *data; 25 | pListitem prev; 26 | pListitem next; 27 | 28 | #ifdef CHECKS 29 | pList list; 30 | #endif 31 | 32 | } Listitem; 33 | 34 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/listops.h: -------------------------------------------------------------------------------- 1 | /* 2 | * (C) 2000 UNIVERSITY OF CHICAGO 3 | * See COPYRIGHT in top-level directory. 4 | */ 5 | 6 | 7 | 8 | 9 | #ifndef _listops_h 10 | #define _listops_h 11 | 12 | /* 13 | * Support for singly-linked list of pointers (or ints) 14 | * 15 | */ 16 | 17 | 18 | typedef struct _List *pList; 19 | typedef struct _Listitem *pListitem; 20 | 21 | #include "list.h" 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/m4/README: -------------------------------------------------------------------------------- 1 | This directory contains some specific tests used in the MCT autoconf system. 2 | They are placed here to make the configure.ac a little cleaner. 3 | 4 | These are only needed if you are trying to recreate the "configure" script from 5 | the "configure.ac" file. 6 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/mpif.F90: -------------------------------------------------------------------------------- 1 | #ifdef HAVE_CONFIG_H 2 | #include 3 | #endif 4 | 5 | Module mpi 6 | implicit none 7 | ! MPI_ADDRESS_KIND: need an 8-byte integer. 8 | INTEGER, PARAMETER, PUBLIC :: MPI_ADDRESS_KIND=selected_int_kind(13) 9 | 10 | 11 | include "mpif.h" 12 | end Module mpi 13 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/tests/.gitignore: -------------------------------------------------------------------------------- 1 | ctest 2 | ctest2 3 | ftest 4 | ftest2 5 | -------------------------------------------------------------------------------- /src/externals/mct/mpi-serial/time.c: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | #include 4 | 5 | 6 | #include "mpiP.h" 7 | 8 | 9 | double MPI_Wtime(void); 10 | 11 | 12 | 13 | double FC_FUNC( mpi_wtime, MPI_WTIME )(void) 14 | { 15 | return(MPI_Wtime()); 16 | } 17 | 18 | 19 | 20 | double MPI_Wtime(void) 21 | { 22 | struct timeval tv; 23 | 24 | if (gettimeofday(&tv,0)) 25 | { 26 | fprintf(stderr,"MPI_Wtime: error calling gettimeofday()\n"); 27 | abort(); 28 | } 29 | 30 | 31 | return((double)(tv.tv_sec) + (double)(tv.tv_usec)/1e6) ; 32 | } 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/Makefile: -------------------------------------------------------------------------------- 1 | 2 | SHELL = /bin/sh 3 | 4 | SUBDIRS = testall 5 | 6 | # TARGETS 7 | subdirs: 8 | @for dir in $(SUBDIRS); do \ 9 | cd $$dir; \ 10 | $(MAKE); \ 11 | cd ..; \ 12 | done 13 | 14 | clean: 15 | @for dir in $(SUBDIRS); do \ 16 | cd $$dir; \ 17 | $(MAKE) clean; \ 18 | cd ..; \ 19 | done 20 | 21 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/testall/.gitignore: -------------------------------------------------------------------------------- 1 | testall 2 | *.clog 3 | fort.* 4 | *.log 5 | *testall.* 6 | *.script 7 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/testall/UNTESTED: -------------------------------------------------------------------------------- 1 | The following routines are untested: 2 | 3 | m_GlobalToLocal 4 | --> GlobalSegMapToNavigator 5 | 6 | m_Merge 7 | 8 | m_Navigator 9 | 10 | m_NBSend 11 | 12 | m_SparseMatrixComms 13 | --> GM_gather 14 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/testall/job.ut-all.jaguar: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | #PBS -q debug 3 | #PBS -l walltime=5:00,size=6 4 | #PBS -o job.out.jaguar 5 | #PBS -j oe 6 | #PBS -m abe 7 | #PBS -A CLI017dev 8 | 9 | # job starts in home directory, cd to the submission directory 10 | 11 | # IMPORTANT! after CNL upgrade, all files (input,output,pwd) 12 | # must be in /lustre. 13 | 14 | cd $PBS_O_WORKDIR 15 | 16 | 17 | echo '---------------------------------------------------------' 18 | 19 | # phoenix 20 | # aprun -n 6 ./utmct 21 | 22 | # jaguar 23 | aprun -n 6 ./utmct 24 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/testall/processors_map.in: -------------------------------------------------------------------------------- 1 | PROCESSORS_MAP 2 | BEGIN 3 | atmosphere 0 1 4 | coupler 2 3 5 | ocean 4 5 6 | END 7 | NPROCS_ATM 1 2 8 | ADD any comments in this line and below. 9 | 1) 10 | ccm.3.6, ocean_POP, couple.PCM are all legitimate name, too. 11 | 2) 12 | Order of names is irrelevant. 13 | -------------------------------------------------------------------------------- /src/externals/mct/testsystem/testall/script.jag: -------------------------------------------------------------------------------- 1 | #!/bin/csh 2 | #PBS -N mct 3 | #PBS -j oe 4 | #PBS -q debug 5 | 6 | #PBS -A cli017esm 7 | ##PBS -l feature=xt5 8 | #PBS -l size=16 9 | #PBS -l walltime=01:00:00 10 | #PBS -l gres=widow3 11 | #PBS -j oe 12 | #PBS -S /bin/csh -V 13 | 14 | 15 | cd $PBS_O_WORKDIR 16 | date 17 | setenv MPICH_NO_BUFFER_ALIAS_CHECK 1 18 | aprun -n 6 ./utmct 19 | -------------------------------------------------------------------------------- /src/externals/mct/testunit/.gitignore: -------------------------------------------------------------------------------- 1 | mctTester 2 | AttrVect.log.* 3 | pbs.mct.script 4 | MCTtestunit.o* 5 | -------------------------------------------------------------------------------- /src/externals/pio1/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | PROJECT(PIO C Fortran) 2 | ENABLE_LANGUAGE(Fortran) 3 | CMAKE_MINIMUM_REQUIRED(VERSION 2.8.5) 4 | 5 | ADD_SUBDIRECTORY(pio) 6 | -------------------------------------------------------------------------------- /src/externals/pio1/SVN_EXTERNAL_DIRECTORIES: -------------------------------------------------------------------------------- 1 | pio/bin http://parallelio.googlecode.com/svn/genf90/trunk_tags/genf90_131120 2 | pio/cmake https://github.com/CESM-Development/CMake_Fortran_utils/tags/CMake_Fortran_utils_150304a 3 | 4 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/errorhandle: -------------------------------------------------------------------------------- 1 | call pio_seterrorhandling(File, PIO_BCAST_ERROR) 2 | ierr = pio_inq_varid(File, 'U', uid) 3 | call pio_seterrorhandling(File, PIO_INTERNAL_ERROR) 4 | if(ierr/= PIO_NOERR) then 5 | write(stderr,*) 'Variable U not found on input file, setting to 0' 6 | U=0 7 | else 8 | ... 9 | endif 10 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-bc: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: start(1), count(1) 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 0 9 | !--------------------------------------- 10 | dims(1) = 8 11 | start(1) = 3 12 | count(1) = 3 13 | call PIO_initdecomp(iosystem,PIO_double,dims,start,count,iodesc) 14 | 15 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-bc-rearr: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | integer (kind=PIO_OFFSET) :: iostart(1), iocount(1) 6 | type (io_desc_t) :: iodesc 7 | ... 8 | !--------------------------------------- 9 | ! Initializing the decomposition on PE 0 10 | !--------------------------------------- 11 | dims(1) = 8 12 | compstart(1) = 3 13 | compcount(1) = 3 14 | iostart(1) = 1 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-bc-rearr-pe1: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 1 9 | !--------------------------------------- 10 | dims(1) = 8 11 | compstart(1) = 1 12 | compcount(1) = 2 13 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc) 14 | 15 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-bc-rearr-pe2: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | integer (kind=PIO_OFFSET) :: iostart(1), iocount(1) 6 | type (io_desc_t) :: iodesc 7 | ... 8 | !--------------------------------------- 9 | ! Initializing the decomposition on PE 2 10 | !--------------------------------------- 11 | dims(1) = 8 12 | compstart(1) = 6 13 | compcount(1) = 3 14 | iostart(1) = 5 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-dof: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (i4) :: compdof 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 0 9 | !--------------------------------------- 10 | dims(1) = 8 11 | compdof = (/2,4,5/) 12 | call PIO_initdecomp(iosystem,PIO_double,dims,compdof,iodesc) 13 | 14 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/example/simple-dof-rearr: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (i4) :: compdof 5 | type (io_desc_t) :: iodesc 6 | integer (kind=PIO_OFFSET) :: iostart(:),iocount(:) 7 | 8 | ... 9 | !--------------------------------------- 10 | ! Initializing the decomposition on PE 0 11 | !--------------------------------------- 12 | dims(1) = 8 13 | compdof = (/2,4,5/) 14 | iostart(1) = 1 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compdof,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/footer.html: -------------------------------------------------------------------------------- 1 |
2 | Generated by doxygen
3 | 4 | 5 | -------------------------------------------------------------------------------- /src/externals/pio1/doc/images/block-cyclic-rearr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio1/doc/images/block-cyclic-rearr.png -------------------------------------------------------------------------------- /src/externals/pio1/doc/images/block-cyclic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio1/doc/images/block-cyclic.png -------------------------------------------------------------------------------- /src/externals/pio1/doc/images/dof-rearr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio1/doc/images/dof-rearr.png -------------------------------------------------------------------------------- /src/externals/pio1/doc/images/dof.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio1/doc/images/dof.png -------------------------------------------------------------------------------- /src/externals/pio1/pio/dtypes.h: -------------------------------------------------------------------------------- 1 | #define TYPEDOUBLE 102 2 | #define TYPEINT 103 3 | #define TYPETEXT 100 4 | #define TYPELONG 104 5 | #define TYPEREAL 101 6 | -------------------------------------------------------------------------------- /src/externals/pio1/pio/rearr_options.h: -------------------------------------------------------------------------------- 1 | #ifndef REARR_OPTIONS_H 2 | #define REARR_OPTIONS_H 3 | 4 | ! communication algorithm options 5 | #define COLLECTIVE 0 6 | #define POINT_TO_POINT 1 7 | #define FLOW_CONTROL 2 8 | 9 | ! Default values for POINT_TO_POINT and FLOW_CONTROL 10 | #define DEF_P2P_HANDSHAKE .true. 11 | #define DEF_P2P_ISEND .false. 12 | #define DEF_P2P_MAXREQ 64 13 | 14 | #endif 15 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | SET(SRC check_mod.F90 gdecomp_mod.F90 kinds_mod.F90 namelist_mod.F90 3 | testpio.F90 utils_mod.F90) 4 | 5 | INCLUDE_DIRECTORIES(${PIO_INCLUDE_DIRS}) 6 | LINK_DIRECTORIES(${PIO_LIB_DIR}) 7 | ADD_EXECUTABLE(testpio ${SRC}) 8 | if(${PIO_BUILD_TIMING}) 9 | TARGET_LINK_LIBRARIES(testpio pio timing) 10 | else() 11 | TARGET_LINK_LIBRARIES(testpio pio) 12 | endif() 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/POPB.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | set id = `date "+%m%d%y-%H%M"` 3 | set host = 'kraken' 4 | #set host = 'hopper' 5 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 24 --bench POPB --numIO 4 --logfile-suffix trunk_close 6 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 80 --bench POPB --numIO 12 --logfile-suffix trunk_close 7 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 160 --bench POPB --numIO 24 --logfile-suffix trunk_close 8 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 320 --bench POPB --numIO 48 --logfile-suffix trunk_close 9 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 640 --bench POPB --numIO 96 --logfile-suffix trunk_close 10 | 11 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/kraken.128.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | #./testpio_bench.pl --iofmt pnc --pecount 128 --bench POPC --numIO 8 3 | #./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 64 --bench POPD --numIO 12 4 | 5 | set id = `date "+%m%d%y-%H%M"` 6 | # POPB 7 | # WRFB 8 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 128 --bench POPC --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 9 | ./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 128 --bench POPD --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 10 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 128 --bench CAM05 --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 11 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/kraken.64.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | set id = `date "+%m%d%y-%H%M"` 3 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench WRFB --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 4 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 80 --bench POPB --numIO 30 --log kraken.0080.pnc.iotask_30.log.${id} 5 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench POPC --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 6 | ./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 64 --bench POPD --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 7 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench CAM05 --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 8 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b01:snc:box:nprocsIO=1' 3 | nx_global = 3730 4 | ny_global = 4918 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b02:bin:box:nproc=1' 3 | nx_global = 2616 4 | ny_global = 683 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b03:pnc:box:nprocsIO=1' 3 | nx_global = 4222 4 | ny_global = 4385 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b04:snc:box:stride=4' 3 | nx_global = 5249 4 | ny_global = 2454 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b05: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b05:bin:box:stride=4:agg=1' 3 | nx_global = 2881 4 | ny_global = 1467 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b06: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b06:pnc:box:stride=4:agg=1' 3 | nx_global = 4285 4 | ny_global = 732 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b07: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b07:bin:box:stride=4:agg=-1' 3 | nx_global = 4209 4 | ny_global = 5073 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 1 11 | dir = './none/' 12 | num_aggregator = -1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.b08: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'b08:pnc:box:stride=4:agg=4' 3 | nx_global = 4432 4 | ny_global = 3480 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 4 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xyz' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bb01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bb01:bin:box:nprocsIO=1:g_root' 3 | nx_global = 4552 4 | ny_global = 2850 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bb02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bb02:bin:box:stride=1:g_xy' 3 | nx_global = 1055 4 | ny_global = 2625 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bb03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bb03:bin:box:stride=1:g_root' 3 | nx_global = 2047 4 | ny_global = 2642 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bb04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bb04:bin:box:stride=4:g_xy:go_yxz' 3 | nx_global = 4794 4 | ny_global = 2536 5 | iofmt = 'bin' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bn01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bn01:bin:none:nprocsIO=1:g_root' 3 | nx_global = 339 4 | ny_global = 231 5 | iofmt = 'bin' 6 | rearr = 'none' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 339 22 | gdy = 231 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bn02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bn02:bin:none:stride=1:g_xy' 3 | nx_global = 360 4 | ny_global = 240 5 | iofmt = 'bin' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.bn03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'bn03:bin:none:stride=1:g_root' 3 | nx_global = 498 4 | ny_global = 272 5 | iofmt = 'bin' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 498 22 | gdy = 272 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4b01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb01:pnc:box:nprocIO=1:g_root' 3 | nx_global = 1276 4 | ny_global = 4542 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4b02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb02:pnc:box:stride=1:g_xy' 3 | nx_global = 4386 4 | ny_global = 4232 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4b03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'n4b03:n4nc:box:stride=1:g_root' 3 | nx_global = 5096 4 | ny_global = 4116 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4b04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'nc4b04:nc4:box:stride=4:g_xy:go_yxz' 3 | nx_global = 659 4 | ny_global = 2158 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4n02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'n4n02:n4nc:none:stride=1:g_xy' 3 | nx_global = 3974 4 | ny_global = 698 5 | iofmt = 'nc4p' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.n4n03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'n4n03:n4nc:none:stride=1:g_root' 3 | nx_global = 1465 4 | ny_global = 558 5 | iofmt = 'nc4p' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pb01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb01:pnc:box:nprocIO=1:g_root' 3 | nx_global = 1995 4 | ny_global = 2535 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pb02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb02:pnc:box:stride=1:g_xy' 3 | nx_global = 3694 4 | ny_global = 4747 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pb03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb03:pnc:box:stride=1:g_root' 3 | nx_global = 2427 4 | ny_global = 3820 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pb04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb04:pnc:box:stride=4:g_xy:go_yxz' 3 | nx_global = 4327 4 | ny_global = 4323 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pn01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn01:pnc:none:nprocIO=1:g_root' 3 | nx_global = 3368 4 | ny_global = 4476 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pn02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn02:pnc:none:stride=1:g_xy' 3 | nx_global = 5201 4 | ny_global = 4896 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.pn03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn03:pnc:none:stride=1:g_root' 3 | nx_global = 773 4 | ny_global = 3829 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sb01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb01:snc:box:nprocsIO=1:g_root' 3 | nx_global = 2827 4 | ny_global = 931 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sb02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb02:snc:box:stride=1:g_xy' 3 | nx_global = 1281 4 | ny_global = 3915 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sb03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb03:snc:box:stride=1:g_root' 3 | nx_global = 5066 4 | ny_global = 2172 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sb04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb04:snc:box:stride=4:g_xy:go_yxz' 3 | nx_global = 1952 4 | ny_global = 871 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sn01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn01:snc:none:nprocsIO=1:g_root' 3 | nx_global = 2866 4 | ny_global = 587 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sn02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn02:snc:none:stride=1:g_xy' 3 | nx_global = 2842 4 | ny_global = 2926 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.sn03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn03:snc:none:stride=1:g_root' 3 | nx_global = 4691 4 | ny_global = 3445 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.wr01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'wr01:pnc:box:stride=1:wrdof' 3 | nx_global = 2335 4 | ny_global = 1011 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = '../wr01.dof.txt' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/namelists/testpio_in.wr02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'rd01:pnc:box:stride=1:rddof' 3 | nx_global = 1013 4 | ny_global = 2966 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = '../wr01.dof.txt' 15 | compdof_output = 'none' 16 | / 17 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/perl5lib/README: -------------------------------------------------------------------------------- 1 | perl5lib/README 2 | 3 | Generic perl5 utilities and subroutines. 4 | 5 | 6 | Build --- Generic utilities for reading build-time configuration files 7 | Streams - Utility for reading/writing streams files for ccsm data models 8 | Decomp -- Utility to figure out decompositions for cam, cice and pop 9 | XML ----- Generic XML reader 10 | t ------- test directory (includes test scripts and sample input files) 11 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/test.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | # ./testpio_bench.pl --iofmt pnc --pecount 128 --bench POPC --numIO 8 3 | # ./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 64 --bench POPD --numIO 12 4 | set id = `date "+%m%d%y-%H%M"` 5 | # ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench POPC --numIO 6 6 | # ./testpio_bench.pl --maxiter 1 --iofmt pnc --pecount 128 --bench POPD --numIO -8 --log frost.128.pnc.iotask_8.log.${id} 7 | # ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench CAM05 --numIO 6 8 | # ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 256 --bench WRFB --numIO 40 9 | 10 | ./testpio_bench.pl --bench CAM05 --iofmt pnc --pecount 256 --numIO -7 11 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/testdecomp_in: -------------------------------------------------------------------------------- 1 | &compdof_nml 2 | nxg = 3600 3 | nyg = 2400 4 | nzg = 40 5 | npes = 2000 6 | nblksppe = 1 7 | grdorder = 'xyz' 8 | grddecomp = 'yze' 9 | gdx = 90 10 | gdy = 96 11 | gdz = 40 12 | blkorder = 'xyz' 13 | blkdecomp1 = 'xy' 14 | blkdecomp2 = '' 15 | bdx = 0 16 | bdy = 0 17 | bdz = 0 18 | / 19 | &iodof_nml 20 | nxg = 3600 21 | nyg = 2400 22 | nzg = 40 23 | npes = 192 24 | nblksppe = 1 25 | grdorder = 'xy' 26 | grddecomp = 'yze' 27 | gdx = 3600 28 | gdy = 25 29 | gdz = 20 30 | blkorder = 'xyz' 31 | blkdecomp1 = 'xy' 32 | blkdecomp2 = '' 33 | bdx = 0 34 | bdy = 0 35 | bdz = 0 36 | / 37 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/testpio/ystest.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | #BSUB -XF # enable X forwarding 4 | #BSUB -Is # interactive job 5 | #BSUB -q caldera # queue 6 | #BSUB -W 00:30 # wall-clock time (hrs:mins) 7 | #BSUB -n 1 # number of tasks in job 8 | #BSUB -J myjob # job name 9 | #BSUB -o myjob.%J.out # output file name in which %J is replaced by the job ID 10 | #BSUB -e myjob.%J.err # error file name in which %J is replaced by the job ID 11 | #BSUB -P P93300606 12 | #start the application 13 | ./testpio_run.pl --host=yellowstone --twopass 14 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/unittests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | SET(SRC basic_tests.F90 driver.F90 global_vars.F90 ncdf_tests.F90 nc_set_log_level2.c) 2 | ADD_DEFINITIONS(${PIO_DEFINITIONS}) 3 | 4 | # Use to trace hdf5 errors with a special netcdf build 5 | OPTION(HDF5_LOGGING "Turn on hdf5 logging (requires instrumented netcdf4)" OFF) 6 | if(HDF5_LOGGING) 7 | ADD_DEFINITIONS(-DLOGGING) 8 | endif() 9 | 10 | INCLUDE_DIRECTORIES(${PIO_INCLUDE_DIRS} ) 11 | LINK_DIRECTORIES(${PIO_LIB_DIR} ) 12 | 13 | ADD_EXECUTABLE(piotest ${SRC}) 14 | 15 | if(${PIO_BUILD_TIMING}) 16 | TARGET_LINK_LIBRARIES(piotest pio timing) 17 | ELSE() 18 | TARGET_LINK_LIBRARIES(piotest pio) 19 | ENDIF() 20 | ADD_TEST(piotest piotest) 21 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/unittests/README: -------------------------------------------------------------------------------- 1 | 1) Make sure pio is built in ../pio 2 | 3 | 3) Determine what tests to run by setting namelist values in input.nl 4 | 5 | 4) Use your machine's mpirun to launch "piotest" with the desired number of tasks 6 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/unittests/input.nl: -------------------------------------------------------------------------------- 1 | &piotest_nml 2 | ltest_bin = .true. 3 | !ltest_bin_direct = .true. ! Ignored if PIO is not built with -DUSEMPIIO 4 | ltest_netcdf = .true. ! Ignored if PIO is not built with -D_NETCDF 5 | ltest_netcdf4p = .true. ! Ignored if PIO is not built with -D_NETCDF4 6 | ltest_netcdf4c = .true. ! Ignored if PIO is not built with -D_NETCDF4 7 | ltest_pnetcdf = .true. ! Ignored if PIO is not built with -D_PNETCDF 8 | stride = 3 9 | / 10 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/unittests/nc_set_log_level2.c: -------------------------------------------------------------------------------- 1 | #if defined(_NETCDF4) && defined(LOGGING) 2 | #include 3 | 4 | int nc_set_log_level2_(int *il) 5 | { 6 | int i; 7 | i = nc_set_log_level( *il ); 8 | return(i); 9 | } 10 | #endif 11 | -------------------------------------------------------------------------------- /src/externals/pio1/tests/unittests/not_netcdf.ieee: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |  -------------------------------------------------------------------------------- /src/externals/pio2/.gitignore: -------------------------------------------------------------------------------- 1 | .project 2 | html/ 3 | *~ 4 | \#*\# 5 | *.o 6 | *.in 7 | *.lo 8 | *.la 9 | Makefile 10 | acinclude.m4 11 | aclocal.m4 12 | atconfig 13 | autom4te.cache 14 | config-h.in 15 | config.* 16 | configure 17 | stamp-h1 18 | conftest* 19 | missing 20 | libtool 21 | install-sh 22 | ltmain.sh 23 | compile 24 | depcomp 25 | build/ 26 | .deps/ 27 | .libs/ 28 | m4/ 29 | *.nc 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/externals/pio2/Makefile.am: -------------------------------------------------------------------------------- 1 | 2 | SUBDIRS = src tests 3 | #Recommended by libtoolize 4 | ACLOCAL_AMFLAGS= -I m4 5 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/TryHDF5_HAS_SZIP.c: -------------------------------------------------------------------------------- 1 | /* 2 | * HDF5 C Test for szip filter 3 | */ 4 | #include "H5pubconf.h" 5 | 6 | int main() 7 | { 8 | #if H5_HAVE_FILTER_SZIP==1 9 | return 0; 10 | #else 11 | XXX; 12 | #endif 13 | } 14 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/TryNetCDF_DAP.c: -------------------------------------------------------------------------------- 1 | /* 2 | * NetCDF C Test for DAP Support 3 | */ 4 | #include "netcdf_meta.h" 5 | 6 | int main() 7 | { 8 | #if NC_HAS_DAP==1 9 | return 0; 10 | #else 11 | XXX; 12 | #endif 13 | } 14 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/TryNetCDF_PARALLEL.c: -------------------------------------------------------------------------------- 1 | /* 2 | * NetCDF C Test for parallel Support 3 | */ 4 | #include "netcdf_meta.h" 5 | 6 | int main() 7 | { 8 | #if NC_HAS_PARALLEL==1 9 | return 0; 10 | #else 11 | XXX; 12 | #endif 13 | } 14 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/TryNetCDF_PNETCDF.c: -------------------------------------------------------------------------------- 1 | /* 2 | * NetCDF C Test for PnetCDF Support 3 | */ 4 | #include "netcdf_meta.h" 5 | 6 | int main() 7 | { 8 | #if NC_HAS_PNETCDF==1 9 | return 0; 10 | #else 11 | XXX; 12 | #endif 13 | } 14 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.alcf: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | ${BGQ_RUNJOB:-runjob} --np $NP --block $COBALT_PARTNAME \ 13 | --envs GPFSMPIO_NAGG_PSET=16 GPFSMPIO_ONESIDED_ALWAYS_RMW=1 \ 14 | GPFSMPIO_BALANCECONTIG=1 GPFSMPIO_WRITE_AGGMETHOD=2 \ 15 | GPFSMPIO_READ_AGGMETHOD=2 PAMID_TYPED_ONESIDED=1 \ 16 | PAMID_RMA_PENDING=1M GPFSMPIO_BRIDGERINGAGG=1 : $@ 17 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.ncsa: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | aprun -n $NP $@ 13 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.nersc: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | srun -n $NP $@ 13 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.nwsc: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | mpirun.lsf $@ -n$NP 13 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.nwscla: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | mpiexec_mpt -n $NP $@ 13 | -------------------------------------------------------------------------------- /src/externals/pio2/cmake/mpiexec.olcf: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | # 3 | # Arguments: 4 | # 5 | # $1 - Number of MPI Tasks 6 | # $2+ - Executable and its arguments 7 | # 8 | 9 | NP=$1 10 | shift 11 | 12 | aprun -n $NP $@ 13 | -------------------------------------------------------------------------------- /src/externals/pio2/ctest/CTestEnvironment-unknown.cmake: -------------------------------------------------------------------------------- 1 | #============================================================================== 2 | # 3 | # This file sets the CMake variables needed to configure and build 4 | # on the default ("unknown") system. 5 | # 6 | #============================================================================== 7 | 8 | # Assume all package locations (NetCDF, PnetCDF, HDF5, etc) are already 9 | # set with existing environment variables: NETCDF, PNETCDF, HDF5, etc. 10 | 11 | # Define the extra CMake configure options 12 | set (CTEST_CONFIGURE_OPTIONS "-DCMAKE_VERBOSE_MAKEFILE=TRUE") 13 | -------------------------------------------------------------------------------- /src/externals/pio2/ctest/runctest-anlworkstation.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | #============================================================================== 3 | # 4 | # This script defines how to run CTest on the Argonne Linux workstations. 5 | # 6 | # This assumes the CTest model name (e.g., "Nightly") is passed to it when 7 | # run. 8 | # 9 | #============================================================================== 10 | 11 | # Get the CTest script directory 12 | scrdir=$1 13 | 14 | # Get the CTest model name 15 | model=$2 16 | 17 | # Run the "ctest" command in another process 18 | ctest -S ${scrdir}/CTestScript-Test.cmake,${model} -V 19 | -------------------------------------------------------------------------------- /src/externals/pio2/ctest/runctest-unknown.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | #============================================================================== 3 | # 4 | # This script defines how to run CTest on the default ("unknown") machine. 5 | # 6 | # This assumes the CTest model name (e.g., "Nightly") is passed to it when 7 | # run. 8 | # 9 | #============================================================================== 10 | 11 | # Get the CTest script directory 12 | scrdir=$1 13 | 14 | # Get the dashboard model name 15 | model=$2 16 | 17 | # Run the "ctest" command in another process 18 | ctest -S ${scrdir}/CTestScript-Test.cmake,${model} -V 19 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/CMakeFiles/3.2.3/CMakeSystem.cmake: -------------------------------------------------------------------------------- 1 | set(CMAKE_HOST_SYSTEM "Linux-3.10.0-123.el7.x86_64") 2 | set(CMAKE_HOST_SYSTEM_NAME "Linux") 3 | set(CMAKE_HOST_SYSTEM_VERSION "3.10.0-123.el7.x86_64") 4 | set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") 5 | 6 | 7 | 8 | set(CMAKE_SYSTEM "Linux-3.10.0-123.el7.x86_64") 9 | set(CMAKE_SYSTEM_NAME "Linux") 10 | set(CMAKE_SYSTEM_VERSION "3.10.0-123.el7.x86_64") 11 | set(CMAKE_SYSTEM_PROCESSOR "x86_64") 12 | 13 | set(CMAKE_CROSSCOMPILING "FALSE") 14 | 15 | set(CMAKE_SYSTEM_LOADED 1) 16 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/CMakeFiles/cmake.check_cache: -------------------------------------------------------------------------------- 1 | # This file is generated by cmake for dependency checking of the CMakeCache.txt file 2 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/images/block-cyclic-rearr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio2/doc/images/block-cyclic-rearr.png -------------------------------------------------------------------------------- /src/externals/pio2/doc/images/block-cyclic.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio2/doc/images/block-cyclic.png -------------------------------------------------------------------------------- /src/externals/pio2/doc/images/dof-rearr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio2/doc/images/dof-rearr.png -------------------------------------------------------------------------------- /src/externals/pio2/doc/images/dof.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/src/externals/pio2/doc/images/dof.png -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/errorhandle: -------------------------------------------------------------------------------- 1 | call pio_seterrorhandling(File, PIO_BCAST_ERROR) 2 | ierr = pio_inq_varid(File, 'U', uid) 3 | call pio_seterrorhandling(File, PIO_INTERNAL_ERROR) 4 | if(ierr/= PIO_NOERR) then 5 | write(stderr,*) 'Variable U not found on input file, setting to 0' 6 | U=0 7 | else 8 | ... 9 | endif 10 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-bc: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: start(1), count(1) 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 0 9 | !--------------------------------------- 10 | dims(1) = 8 11 | start(1) = 3 12 | count(1) = 3 13 | call PIO_initdecomp(iosystem,PIO_double,dims,start,count,iodesc) 14 | 15 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-bc-rearr: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | integer (kind=PIO_OFFSET) :: iostart(1), iocount(1) 6 | type (io_desc_t) :: iodesc 7 | ... 8 | !--------------------------------------- 9 | ! Initializing the decomposition on PE 0 10 | !--------------------------------------- 11 | dims(1) = 8 12 | compstart(1) = 3 13 | compcount(1) = 3 14 | iostart(1) = 1 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-bc-rearr-pe1: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 1 9 | !--------------------------------------- 10 | dims(1) = 8 11 | compstart(1) = 1 12 | compcount(1) = 2 13 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc) 14 | 15 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-bc-rearr-pe2: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (kind=PIO_OFFSET) :: compstart(1), compcount(1) 5 | integer (kind=PIO_OFFSET) :: iostart(1), iocount(1) 6 | type (io_desc_t) :: iodesc 7 | ... 8 | !--------------------------------------- 9 | ! Initializing the decomposition on PE 2 10 | !--------------------------------------- 11 | dims(1) = 8 12 | compstart(1) = 6 13 | compcount(1) = 3 14 | iostart(1) = 5 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compstart,compcount,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-dof: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (i4) :: compdof 5 | type (io_desc_t) :: iodesc 6 | ... 7 | !--------------------------------------- 8 | ! Initializing the decomposition on PE 0 9 | !--------------------------------------- 10 | dims(1) = 8 11 | compdof = (/2,4,5/) 12 | call PIO_initdecomp(iosystem,PIO_double,dims,compdof,iodesc) 13 | 14 | -------------------------------------------------------------------------------- /src/externals/pio2/doc/source/example/simple-dof-rearr: -------------------------------------------------------------------------------- 1 | 2 | type (iosystem_desc_t) :: iosystem 3 | integer (i4) :: dims(1) 4 | integer (i4) :: compdof 5 | type (io_desc_t) :: iodesc 6 | integer (kind=PIO_OFFSET) :: iostart(:),iocount(:) 7 | 8 | ... 9 | !--------------------------------------- 10 | ! Initializing the decomposition on PE 0 11 | !--------------------------------------- 12 | dims(1) = 8 13 | compdof = (/2,4,5/) 14 | iostart(1) = 1 15 | iocount(1) = 4 16 | call PIO_initdecomp(iosystem,PIO_double,dims,compdof,iodesc,iostart=iostart,iocount=iocount) 17 | 18 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ###-------------------------------------------------------------------------### 2 | ### CMakeList.txt for examples using pio 3 | ###-------------------------------------------------------------------------### 4 | 5 | if (PIO_ENABLE_FORTRAN) 6 | if ("${PLATFORM}" STREQUAL "goldbach" ) 7 | ADD_SUBDIRECTORY(f03) 8 | elseif ("${PLATFORM}" STREQUAL "yellowstone" ) 9 | ADD_SUBDIRECTORY(f03) 10 | ADD_SUBDIRECTORY(c) 11 | else() 12 | ADD_SUBDIRECTORY(f03) 13 | ADD_SUBDIRECTORY(c) 14 | # ADD_SUBDIRECTORY(cxx) 15 | endif() 16 | else() 17 | ADD_SUBDIRECTORY(c) 18 | endif() 19 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/POPB.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | set id = `date "+%m%d%y-%H%M"` 3 | set host = 'kraken' 4 | #set host = 'hopper' 5 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 24 --bench POPB --numIO 4 --logfile-suffix trunk_close 6 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 80 --bench POPB --numIO 12 --logfile-suffix trunk_close 7 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 160 --bench POPB --numIO 24 --logfile-suffix trunk_close 8 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 320 --bench POPB --numIO 48 --logfile-suffix trunk_close 9 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 640 --bench POPB --numIO 96 --logfile-suffix trunk_close 10 | 11 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/kraken.128.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | #./testpio_bench.pl --iofmt pnc --pecount 128 --bench POPC --numIO 8 3 | #./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 64 --bench POPD --numIO 12 4 | 5 | set id = `date "+%m%d%y-%H%M"` 6 | # POPB 7 | # WRFB 8 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 128 --bench POPC --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 9 | ./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 128 --bench POPD --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 10 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 128 --bench CAM05 --numIO 20 --log testpio.0128.pnc.iotask_20.${id} 11 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/kraken.64.csh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/csh 2 | set id = `date "+%m%d%y-%H%M"` 3 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench WRFB --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 4 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 80 --bench POPB --numIO 30 --log kraken.0080.pnc.iotask_30.log.${id} 5 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench POPC --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 6 | ./testpio_bench.pl --maxiter 2 --iofmt pnc --pecount 64 --bench POPD --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 7 | ./testpio_bench.pl --maxiter 10 --iofmt pnc --pecount 64 --bench CAM05 --numIO 12 --log kraken.0064.pnc.iotask_12.log.${id} 8 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.n4b01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb01:pnc:box:nprocIO=1:g_root' 3 | nx_global = 1276 4 | ny_global = 4542 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.n4b02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb02:pnc:box:stride=1:g_xy' 3 | nx_global = 4386 4 | ny_global = 4232 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.n4b03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'n4b03:n4nc:box:stride=1:g_root' 3 | nx_global = 5096 4 | ny_global = 4116 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.n4b04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'nc4b04:nc4:box:stride=4:g_xy:go_yxz' 3 | nx_global = 659 4 | ny_global = 2158 5 | iofmt = 'nc4p' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.n4n02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'n4n02:n4nc:none:stride=1:g_xy' 3 | nx_global = 3974 4 | ny_global = 698 5 | iofmt = 'nc4p' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pb01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb01:pnc:box:nprocIO=2:g_root' 3 | nx_global = 1995 4 | ny_global = 2535 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = 2 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pb02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb02:pnc:box:stride=1:g_xy' 3 | nx_global = 3694 4 | ny_global = 4747 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pb03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb03:pnc:box:stride=1:g_root' 3 | nx_global = 2427 4 | ny_global = 3820 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pb04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb04:pnc:box:stride=4:g_xy:go_yxz' 3 | nx_global = 4327 4 | ny_global = 4323 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pn01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn01:pnc:none:nprocIO=1:g_root' 3 | nx_global = 3368 4 | ny_global = 4476 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pn02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn02:pnc:none:stride=1:g_xy' 3 | nx_global = 5201 4 | ny_global = 4896 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.pn03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pn03:pnc:none:stride=1:g_root' 3 | nx_global = 773 4 | ny_global = 3829 5 | iofmt = 'pnc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.ps01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb01:pnc:sub:nprocIO=2:g_root' 3 | nx_global = 1995 4 | ny_global = 2535 5 | iofmt = 'pnc' 6 | rearr = 'sub' 7 | nprocsIO = 2 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.ps02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb02:pnc:sub:stride=1:g_xy' 3 | nx_global = 3694 4 | ny_global = 4747 5 | iofmt = 'pnc' 6 | rearr = 'sub' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.ps03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb03:pnc:sub:stride=1:g_root' 3 | nx_global = 2427 4 | ny_global = 3820 5 | iofmt = 'pnc' 6 | rearr = 'sub' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.ps04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'pb04:pnc:sub:stride=4:g_xy:go_yxz' 3 | nx_global = 4327 4 | ny_global = 4323 5 | iofmt = 'pnc' 6 | rearr = 'sub' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sb01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb01:snc:box:nprocsIO=1:g_root' 3 | nx_global = 2827 4 | ny_global = 931 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sb02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb02:snc:box:stride=1:g_xy' 3 | nx_global = 1281 4 | ny_global = 3915 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sb03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb03:snc:box:stride=1:g_root' 3 | nx_global = 5066 4 | ny_global = 2172 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sb04: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sb04:snc:box:stride=4:g_xy:go_yxz' 3 | nx_global = 1952 4 | ny_global = 871 5 | iofmt = 'snc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 4 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'yxz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sn01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn01:snc:none:nprocsIO=1:g_root' 3 | nx_global = 2866 4 | ny_global = 587 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = 1 8 | stride = -1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sn02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn02:snc:none:stride=1:g_xy' 3 | nx_global = 2842 4 | ny_global = 2926 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.sn03: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'sn03:snc:none:stride=1:g_root' 3 | nx_global = 4691 4 | ny_global = 3445 5 | iofmt = 'snc' 6 | rearr = 'none' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = 'none' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'setblk' 21 | gdx = 360 22 | gdy = 240 23 | gdz = 1 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.wr01: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'wr01:pnc:box:stride=1:wrdof' 3 | nx_global = 2335 4 | ny_global = 1011 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = 'namelist' 15 | compdof_output = '../wr01.dof.txt' 16 | / 17 | &compdof_nml 18 | nblksppe = 1 19 | grdorder = 'xyz' 20 | grddecomp = 'xy' 21 | gdx = 0 22 | gdy = 0 23 | gdz = 0 24 | blkorder = 'xyz' 25 | blkdecomp1 = 'xy' 26 | blkdecomp2 = '' 27 | bdx = 0 28 | bdy = 0 29 | bdz = 0 30 | / 31 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/namelists/testpio_in.wr02: -------------------------------------------------------------------------------- 1 | &io_nml 2 | casename = 'rd01:pnc:box:stride=1:rddof' 3 | nx_global = 1013 4 | ny_global = 2966 5 | iofmt = 'pnc' 6 | rearr = 'box' 7 | nprocsIO = -1 8 | stride = 1 9 | base = 0 10 | maxiter = 10 11 | dir = './none/' 12 | num_aggregator = 1 13 | DebugLevel = 0 14 | compdof_input = '../wr01.dof.txt' 15 | compdof_output = 'none' 16 | / 17 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/perl5lib/README: -------------------------------------------------------------------------------- 1 | perl5lib/README 2 | 3 | Generic perl5 utilities and subroutines. 4 | 5 | 6 | Build --- Generic utilities for reading build-time configuration files 7 | Streams - Utility for reading/writing streams files for ccsm data models 8 | Decomp -- Utility to figure out decompositions for cam, cice and pop 9 | XML ----- Generic XML reader 10 | t ------- test directory (includes test scripts and sample input files) 11 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/testdecomp_in: -------------------------------------------------------------------------------- 1 | &compdof_nml 2 | nxg = 3600 3 | nyg = 2400 4 | nzg = 40 5 | npes = 2000 6 | nblksppe = 1 7 | grdorder = 'xyz' 8 | grddecomp = 'yze' 9 | gdx = 90 10 | gdy = 96 11 | gdz = 40 12 | blkorder = 'xyz' 13 | blkdecomp1 = 'xy' 14 | blkdecomp2 = '' 15 | bdx = 0 16 | bdy = 0 17 | bdz = 0 18 | / 19 | &iodof_nml 20 | nxg = 3600 21 | nyg = 2400 22 | nzg = 40 23 | npes = 192 24 | nblksppe = 1 25 | grdorder = 'xy' 26 | grddecomp = 'yze' 27 | gdx = 3600 28 | gdy = 25 29 | gdz = 20 30 | blkorder = 'xyz' 31 | blkdecomp1 = 'xy' 32 | blkdecomp2 = '' 33 | bdx = 0 34 | bdy = 0 35 | bdz = 0 36 | / 37 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/basic/ystest.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | #BSUB -XF # enable X forwarding 4 | #BSUB -Is # interactive job 5 | #BSUB -q caldera # queue 6 | #BSUB -W 00:30 # wall-clock time (hrs:mins) 7 | #BSUB -n 1 # number of tasks in job 8 | #BSUB -J myjob # job name 9 | #BSUB -o myjob.%J.out # output file name in which %J is replaced by the job ID 10 | #BSUB -e myjob.%J.err # error file name in which %J is replaced by the job ID 11 | #BSUB -P P93300606 12 | #start the application 13 | ./testpio_run.pl --host=yellowstone --twopass 14 | -------------------------------------------------------------------------------- /src/externals/pio2/examples/c/valsupp_example1.supp: -------------------------------------------------------------------------------- 1 | { 2 | cond_jump_1 3 | Memcheck:Cond 4 | fun:MPIC_Waitall 5 | fun:MPIR_Alltoallw_intra 6 | fun:MPIR_Alltoallw 7 | fun:MPIR_Alltoallw_impl 8 | fun:PMPI_Alltoallw 9 | fun:pio_swapm 10 | fun:rearrange_comp2io 11 | fun:PIOc_write_darray_multi 12 | fun:flush_buffer 13 | fun:PIOc_sync 14 | fun:main 15 | } -------------------------------------------------------------------------------- /src/externals/pio2/examples/cxx/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | ###-------------------------------------------------------------------------### 2 | ### CMakeList.txt for examples using pio 3 | ###-------------------------------------------------------------------------### 4 | 5 | # Adding PIO definitions - defined in the root directory 6 | ADD_DEFINITIONS(${PIO_DEFINITIONS}) 7 | 8 | INCLUDE_DIRECTORIES(${PIO_INCLUDE_DIRS}) 9 | LINK_DIRECTORIES(${PIO_LIB_DIR}) 10 | 11 | SET(SRC examplePio.cxx) 12 | ADD_EXECUTABLE(examplePio_cxx ${SRC}) 13 | -------------------------------------------------------------------------------- /src/externals/pio2/src/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = clib 2 | -------------------------------------------------------------------------------- /src/externals/pio2/src/clib/Makefile.am: -------------------------------------------------------------------------------- 1 | ## This is the automake file to build the PIO C library. 2 | # Ed Hartnett 8/19/17 3 | 4 | # The library we are building. 5 | lib_LTLIBRARIES = libpio.la 6 | 7 | # The header file. 8 | include_HEADERS = pio.h 9 | 10 | # THe soure files. 11 | libpio_la_SOURCES = bget.c pioc_sc.c pio_darray.c pio_file.c \ 12 | pio_getput_int.c pio_msg.c pio_nc.c pio_rearrange.c pio_varm.c \ 13 | pioc.c pioc_support.c pio_darray_int.c pio_get_nc.c pio_lists.c \ 14 | pio_nc4.c pio_put_nc.c pio_spmd.c pio_internal.h bget.h 15 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = cunit 2 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/general/pio_init_finalize.F90.in: -------------------------------------------------------------------------------- 1 | PIO_TF_AUTO_TEST_SUB_BEGIN init_finalize 2 | ! The default test driver should initialize and finalize PIO 3 | PRINT *, "Hello world" 4 | PIO_TF_AUTO_TEST_SUB_END init_finalize 5 | 6 | 7 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/performance/gensimple.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | use strict; 3 | my @dims= qw(10); 4 | my $ndims = $#dims+1; 5 | my $nprocs = 2; 6 | 7 | print "version 2001 npes $nprocs ndims $ndims \n"; 8 | 9 | my $size=1; 10 | foreach(@dims){ 11 | $size *= $_; 12 | print "$_ "; 13 | } 14 | print "\n"; 15 | my $prevval = 1; 16 | for(my $i=0;$i<$nprocs;$i++){ 17 | my $lsize = int($size/$nprocs); 18 | my $remainder = $size - $lsize*$nprocs; 19 | $lsize++ if($remainder > $i) ; 20 | print "$i $lsize\n"; 21 | my $j; 22 | for( $j=$prevval; $j<$prevval+$lsize;$j++){ 23 | print "$j "; 24 | } 25 | $prevval = $j; 26 | print "\n"; 27 | } 28 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/unit/input.nl: -------------------------------------------------------------------------------- 1 | &piotest_nml 2 | ltest_netcdf = .true. ! Ignored if PIO is not built with -D_NETCDF 3 | ltest_netcdf4p = .true. ! Ignored if PIO is not built with -D_NETCDF4 4 | ltest_netcdf4c = .true. ! Ignored if PIO is not built with -D_NETCDF4 5 | ltest_pnetcdf = .true. ! Ignored if PIO is not built with -D_PNETCDF 6 | stride = 2 7 | / 8 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/unit/nc_set_log_level2.c: -------------------------------------------------------------------------------- 1 | #if defined(_NETCDF4) && defined(LOGGING) 2 | #include 3 | 4 | int nc_set_log_level2_(int *il) 5 | { 6 | int i; 7 | i = nc_set_log_level( *il ); 8 | return(i); 9 | } 10 | #endif 11 | -------------------------------------------------------------------------------- /src/externals/pio2/tests/unit/not_netcdf.ieee: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 |  -------------------------------------------------------------------------------- /src/share/RandNum/src/dsfmt_f03/dSFMT_utils.c: -------------------------------------------------------------------------------- 1 | #include "dSFMT.h" 2 | #include 3 | 4 | /* copyright James Spencer 2012. 5 | * New BSD License, see License.txt for details. 6 | */ 7 | 8 | /* Utility (memory-access) functions to enable use of dSFMT from Fortran. */ 9 | 10 | void* malloc_dsfmt_t(void) { 11 | /* Allocate sufficient memory for a dSFMT state (ie a variable of type dsfmt_t). */ 12 | return malloc(sizeof(dsfmt_t)); 13 | } 14 | 15 | void free_dsfmt_t(dsfmt_t* ptr) { 16 | /* Free memory associated with a dSFMT state (ie a variable of type dsfmt_t). */ 17 | free(ptr); 18 | } 19 | -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND esmf_wrf_timemgr_sources 2 | ESMF.F90 3 | ESMF_AlarmClockMod.F90 4 | ESMF_AlarmMod.F90 5 | ESMF_BaseMod.F90 6 | ESMF_BaseTimeMod.F90 7 | ESMF_CalendarMod.F90 8 | ESMF_ClockMod.F90 9 | ESMF_FractionMod.F90 10 | ESMF_ShrTimeMod.F90 11 | ESMF_Stubs.F90 12 | ESMF_TimeIntervalMod.F90 13 | ESMF_TimeMod.F90 14 | MeatMod.F90 15 | wrf_error_fatal.F90 16 | wrf_message.F90 17 | ) 18 | 19 | sourcelist_to_parent(esmf_wrf_timemgr_sources) -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/ESMF.F90: -------------------------------------------------------------------------------- 1 | ! TBH: This version is for use with the ESMF library embedded in the WRF 2 | ! TBH: distribution. 3 | MODULE ESMF 4 | USE ESMF_AlarmMod 5 | USE ESMF_BaseMod 6 | USE ESMF_BaseTimeMod 7 | USE ESMF_CalendarMod 8 | USE ESMF_ClockMod 9 | USE ESMF_FractionMod 10 | USE ESMF_TimeIntervalMod 11 | USE ESMF_TimeMod 12 | USE ESMF_ShrTimeMod 13 | USE ESMF_AlarmClockMod 14 | USE ESMF_Stubs ! add new dummy interfaces and typedefs here as needed 15 | USE MeatMod 16 | #include 17 | INTEGER, PARAMETER :: ESMF_MAX_ALARMS=MAX_ALARMS 18 | ! 19 | END MODULE ESMF 20 | -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/unittests/go.csh: -------------------------------------------------------------------------------- 1 | #!/bin/csh 2 | 3 | rm -f ./test 4 | gmake 5 | rm -f ./test.out 6 | ./test >& test.out 7 | 8 | tail -5 test.out 9 | set nd = `diff test.out.base test.out | wc -l` 10 | 11 | echo "diffs vs baseline = $nd" 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/unittests/wrf_stuff.F90: -------------------------------------------------------------------------------- 1 | 2 | SUBROUTINE wrf_message( str ) 3 | IMPLICIT NONE 4 | CHARACTER*(*) str 5 | write(6,*) 'wrf_message ',trim(str) 6 | END SUBROUTINE wrf_message 7 | 8 | 9 | SUBROUTINE wrf_error_fatal( str ) 10 | IMPLICIT NONE 11 | CHARACTER*(*) str 12 | write(6,*) 'wrf_error_fatal ',trim(str) 13 | stop 14 | END SUBROUTINE wrf_error_fatal 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/wrf_error_fatal.F90: -------------------------------------------------------------------------------- 1 | 2 | subroutine wrf_error_fatal(msg) 3 | use shr_sys_mod, only: shr_sys_abort 4 | implicit none 5 | character(len=*), intent(in) :: msg 6 | write(6,*) 'wrf_error_fatal: ',trim(msg) 7 | call shr_sys_abort( msg ) 8 | end subroutine wrf_error_fatal 9 | 10 | -------------------------------------------------------------------------------- /src/share/esmf_wrf_timemgr/wrf_message.F90: -------------------------------------------------------------------------------- 1 | SUBROUTINE wrf_message( str ) 2 | IMPLICIT NONE 3 | CHARACTER*(*) str 4 | write(6,*) str 5 | END SUBROUTINE wrf_message 6 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/config.h: -------------------------------------------------------------------------------- 1 | #ifdef FORTRAN_SAME 2 | #define FC_FUNC(name,NAME) name 3 | #elif FORTRAN_UNDERSCORE_ 4 | #define FC_FUNC(name,NAME) name ##_ 5 | #elif FORTRAN_DOUBLE_UNDERSCORE_ 6 | #define FC_FUNC(name,NAME) name ##__ 7 | #endif 8 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/namelist: -------------------------------------------------------------------------------- 1 | # No stop date 2 | &ccsm_inparm 3 | case_desc = 'Erik' 4 | / 5 | &timemgr_inparm 6 | restart_monthly = .true. 7 | atm_cpl_dt = 1200 8 | orb_iyear_AD = 1950 9 | start_ymd = 1231 10 | / 11 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/nl/atm.stdin: -------------------------------------------------------------------------------- 1 | &atm_inparm 2 | / 3 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/nl/cpl.stdin: -------------------------------------------------------------------------------- 1 | &cpl_inparm 2 | / 3 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/nl/ice.stdin: -------------------------------------------------------------------------------- 1 | &ice_inparm 2 | / 3 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/nl/lnd.stdin: -------------------------------------------------------------------------------- 1 | &lnd_inparm 2 | / 3 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/nl/ocn.stdin: -------------------------------------------------------------------------------- 1 | &ocn_inparm 2 | / 3 | -------------------------------------------------------------------------------- /src/share/test/old_unit_testers/test_shr_log.F90: -------------------------------------------------------------------------------- 1 | program test_shr_log 2 | use test_mod, only : test_init, test_final 3 | implicit none 4 | 5 | call test_init 6 | 7 | call test_shr_log_errMsg 8 | 9 | call test_final 10 | 11 | contains 12 | 13 | subroutine test_shr_log_errMsg 14 | use shr_log_mod 15 | use test_mod 16 | 17 | implicit none 18 | 19 | character(len=256) :: my_result 20 | 21 | my_result = shr_log_errMsg('myfile.f90', 42) 22 | 23 | call test_is(my_result, "ERROR in myfile.f90 at line 42", "shr_log_errMsg: basic test") 24 | 25 | end subroutine test_shr_log_errMsg 26 | end program test_shr_log 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/share/test/unit/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory(mock) 2 | 3 | add_subdirectory(shr_abort_test) 4 | 5 | add_subdirectory(shr_assert_test) 6 | 7 | add_subdirectory(shr_spfn_test) 8 | 9 | add_subdirectory(shr_infnan_test) 10 | 11 | add_subdirectory(shr_string_test) 12 | 13 | add_subdirectory(shr_strconvert_test) 14 | 15 | add_subdirectory(shr_log_test) 16 | 17 | add_subdirectory(dynamic_vector) 18 | 19 | add_subdirectory(shr_vmath_test) 20 | 21 | add_subdirectory(shr_wv_sat_test) 22 | 23 | add_subdirectory(shr_precip_test) 24 | 25 | add_subdirectory(shr_cal_test) -------------------------------------------------------------------------------- /src/share/test/unit/dynamic_vector/dynamic_vector_character16.F90: -------------------------------------------------------------------------------- 1 | module dynamic_vector_character16 2 | 3 | use pfunit_mod, only: throw 4 | 5 | use shr_log_mod, only: OOBMsg => shr_log_OOBMsg 6 | 7 | implicit none 8 | private 9 | 10 | #define VECTOR_NAME character16_vector 11 | #define TYPE_NAME character(len=16) 12 | #define THROW(string) call throw(string) 13 | 14 | public :: VECTOR_NAME 15 | 16 | #include "dynamic_vector_typedef.inc" 17 | 18 | contains 19 | 20 | #include "dynamic_vector_procdef.inc" 21 | 22 | end module dynamic_vector_character16 23 | -------------------------------------------------------------------------------- /src/share/test/unit/dynamic_vector/dynamic_vector_int_ptr.F90: -------------------------------------------------------------------------------- 1 | module dynamic_vector_int_ptr 2 | 3 | use ptr_wrapper, only: int_ptr 4 | 5 | use pfunit_mod, only: throw 6 | 7 | use shr_log_mod, only: OOBMsg => shr_log_OOBMsg 8 | 9 | implicit none 10 | private 11 | 12 | #define VECTOR_NAME int_ptr_vector 13 | #define TYPE_NAME type(int_ptr) 14 | #define THROW(string) call throw(string) 15 | 16 | public :: VECTOR_NAME 17 | 18 | #include "dynamic_vector_typedef.inc" 19 | 20 | contains 21 | 22 | #include "dynamic_vector_procdef.inc" 23 | 24 | end module dynamic_vector_int_ptr 25 | -------------------------------------------------------------------------------- /src/share/test/unit/dynamic_vector/dynamic_vector_integer.F90: -------------------------------------------------------------------------------- 1 | module dynamic_vector_integer 2 | 3 | use pfunit_mod, only: throw 4 | 5 | use shr_log_mod, only: OOBMsg => shr_log_OOBMsg 6 | 7 | implicit none 8 | private 9 | 10 | #define VECTOR_NAME integer_vector 11 | #define TYPE_NAME integer 12 | #define THROW(string) call throw(string) 13 | 14 | public :: VECTOR_NAME 15 | 16 | #include "dynamic_vector_typedef.inc" 17 | 18 | contains 19 | 20 | #include "dynamic_vector_procdef.inc" 21 | 22 | end module dynamic_vector_integer 23 | -------------------------------------------------------------------------------- /src/share/test/unit/dynamic_vector/dynamic_vector_r8.F90: -------------------------------------------------------------------------------- 1 | module dynamic_vector_r8 2 | 3 | use shr_kind_mod, only: r8 => shr_kind_r8 4 | use shr_infnan_mod, only: assignment(=), nan => shr_infnan_nan 5 | 6 | use pfunit_mod, only: throw 7 | 8 | use shr_log_mod, only: OOBMsg => shr_log_OOBMsg 9 | 10 | implicit none 11 | private 12 | 13 | #define VECTOR_NAME r8_vector 14 | #define TYPE_NAME real(r8) 15 | #define THROW(string) call throw(string) 16 | 17 | public :: VECTOR_NAME 18 | 19 | #include "dynamic_vector_typedef.inc" 20 | 21 | contains 22 | 23 | #include "dynamic_vector_procdef.inc" 24 | 25 | end module dynamic_vector_r8 26 | -------------------------------------------------------------------------------- /src/share/test/unit/mock/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND share_sources 2 | shr_sys_mod.nompi_abortthrows.F90) 3 | 4 | sourcelist_to_parent(share_sources) 5 | -------------------------------------------------------------------------------- /src/share/test/unit/mock/README: -------------------------------------------------------------------------------- 1 | This directory contains mock/stub modules that are just built as part of select 2 | unit tests of the share code. This directory should *NOT* generally be added by 3 | unit tests of other components. 4 | 5 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_abort_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Local pFUnit files. 2 | set(pf_sources 3 | test_shr_abort.pf) 4 | 5 | # Sources to test. 6 | set(sources_needed 7 | shr_kind_mod.F90 8 | shr_abort_mod.abortthrows.F90) 9 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 10 | 11 | # Do source preprocessing and add the executable. 12 | create_pFUnit_test(shr_abort_mod shr_abort_mod_exe "${pf_sources}" 13 | "${test_sources}") 14 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_abort_test/README: -------------------------------------------------------------------------------- 1 | This directory tests the version of shr_abort_mod that is used in unit tests. It 2 | does NOT test the production version of shr_abort_mod. 3 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_assert_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(pf_sources test_assert.pf test_assert_array.pf test_macro.pf 2 | test_ndebug.pf) 3 | 4 | set(sources_needed shr_kind_mod.F90 shr_infnan_mod.F90 5 | shr_strconvert_mod.F90 shr_log_mod.F90 6 | shr_sys_mod.nompi_abortthrows.F90 shr_abort_mod.abortthrows.F90 7 | shr_assert_mod.F90) 8 | 9 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 10 | 11 | create_pFUnit_test(assert assert_test_exe "${pf_sources}" "${test_sources}") 12 | 13 | declare_generated_dependencies(assert_test_exe "${share_genf90_sources}") 14 | 15 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_infnan_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(test_sources test_infnan.F90) 2 | 3 | set(sources_needed shr_kind_mod.F90 shr_infnan_mod.F90) 4 | 5 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 6 | 7 | add_executable(infnan_test_exe ${test_sources}) 8 | 9 | declare_generated_dependencies(infnan_test_exe "${share_genf90_sources}") 10 | 11 | # Add the actual test. 12 | add_test(infnan infnan_test_exe) 13 | 14 | define_Fortran_stop_failure(infnan) 15 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_log_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(pf_sources 2 | test_error_printers.pf) 3 | 4 | set(sources_needed shr_kind_mod.F90 shr_infnan_mod.F90 5 | shr_strconvert_mod.F90 shr_log_mod.F90) 6 | 7 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 8 | 9 | create_pFUnit_test(shr_log shr_log_exe "${pf_sources}" 10 | "${test_sources}") 11 | 12 | declare_generated_dependencies(shr_log_exe "${share_genf90_sources}") 13 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_precip_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Local pFUnit files. 2 | set(pf_sources 3 | test_shr_precip.pf) 4 | 5 | # Sources to test. 6 | set(sources_needed 7 | shr_kind_mod.F90 shr_const_mod.F90 shr_precip_mod.F90) 8 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 9 | 10 | # Do source preprocessing and add the executable. 11 | create_pFUnit_test(shr_precip_mod shr_precip_mod_exe "${pf_sources}" 12 | "${test_sources}") 13 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_spfn_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(pf_sources test_erf_r4.pf test_erf_r8.pf test_gamma_factorial.pf 2 | test_igamma.pf) 3 | 4 | set(sources_needed shr_kind_mod.F90 shr_const_mod.F90 shr_infnan_mod.F90 5 | shr_strconvert_mod.F90 shr_log_mod.F90 6 | shr_sys_mod.nompi_abortthrows.F90 shr_abort_mod.abortthrows.F90 7 | shr_spfn_mod.F90) 8 | 9 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 10 | 11 | create_pFUnit_test(spfn spfn_test_exe "${pf_sources}" "${test_sources}") 12 | 13 | declare_generated_dependencies(spfn_test_exe "${share_genf90_sources}") 14 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_strconvert_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(pf_sources 2 | test_toString.pf) 3 | 4 | set(sources_needed shr_kind_mod.F90 shr_infnan_mod.F90 5 | shr_strconvert_mod.F90) 6 | 7 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 8 | 9 | create_pFUnit_test(shr_strconvert shr_strconvert_exe "${pf_sources}" 10 | "${test_sources}") 11 | 12 | declare_generated_dependencies(shr_strconvert_exe "${share_genf90_sources}") 13 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_string_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set (pf_sources 2 | test_shr_string.pf 3 | ) 4 | 5 | set(sources_needed 6 | shr_string_mod.F90 7 | shr_assert_mod.F90 8 | shr_infnan_mod.F90 9 | shr_kind_mod.F90 10 | shr_log_mod.F90 11 | shr_strconvert_mod.F90 12 | shr_sys_mod.nompi_abortthrows.F90 13 | shr_abort_mod.abortthrows.F90 14 | shr_timer_mod.F90) 15 | 16 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 17 | 18 | create_pFUnit_test(shr_string shr_string_exe "${pf_sources}" "${test_sources}") 19 | 20 | declare_generated_dependencies(shr_string_exe "${share_genf90_sources}") -------------------------------------------------------------------------------- /src/share/test/unit/shr_vmath_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(test_sources test_vmath.F90) 2 | 3 | set(sources_needed shr_kind_mod.F90 shr_log_mod.F90 shr_strconvert_mod.F90 4 | shr_infnan_mod.F90 shr_const_mod.F90 shr_vmath_mod.F90) 5 | 6 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 7 | 8 | add_executable(vmath_test_exe ${test_sources}) 9 | 10 | # Add the actual test. 11 | add_test(vmath vmath_test_exe) 12 | 13 | declare_generated_dependencies(vmath_test_exe "${share_genf90_sources}") 14 | -------------------------------------------------------------------------------- /src/share/test/unit/shr_wv_sat_test/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # Local pFUnit files. 2 | set(pf_sources 3 | test_wv_sat.pf test_wv_sat_each_method.pf) 4 | 5 | # Sources to test. 6 | set(sources_needed 7 | shr_kind_mod.F90 shr_const_mod.F90 shr_wv_sat_mod.F90) 8 | extract_sources("${sources_needed}" "${share_sources}" test_sources) 9 | 10 | # Do source preprocessing and add the executable. 11 | create_pFUnit_test(shr_wv_sat_mod shr_wv_sat_mod_exe "${pf_sources}" 12 | "${test_sources}") 13 | -------------------------------------------------------------------------------- /src/share/unit_test_stubs/README: -------------------------------------------------------------------------------- 1 | This directory contains stubs and other unit test-specific implementations that 2 | may be useful for the unit test builds for a number of components. 3 | -------------------------------------------------------------------------------- /src/share/unit_test_stubs/pio/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | set(genf90_files pio.F90.in) 2 | 3 | process_genf90_source_list("${genf90_files}" ${CMAKE_CURRENT_BINARY_DIR} 4 | pio_genf90_sources) 5 | 6 | sourcelist_to_parent(pio_genf90_sources) 7 | 8 | list(APPEND pio_sources "${pio_genf90_sources}") 9 | 10 | sourcelist_to_parent(pio_sources) -------------------------------------------------------------------------------- /src/share/unit_test_stubs/pio/README: -------------------------------------------------------------------------------- 1 | This directory contains a stub implementation of (a subset of) PIO. This can be 2 | built in place of the true PIO library in unit tests. 3 | -------------------------------------------------------------------------------- /src/share/unit_test_stubs/util/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | list(APPEND share_sources 2 | shr_abort_mod.abortthrows.F90) 3 | 4 | sourcelist_to_parent(share_sources) 5 | -------------------------------------------------------------------------------- /src/share/unit_test_stubs/util/README: -------------------------------------------------------------------------------- 1 | This directory contains some fake modules that should generally be used in place 2 | of their real counterparts by ALL unit tests. So this directory generally should 3 | be added by unit tests of other components. 4 | -------------------------------------------------------------------------------- /src/share/util/shr_flds_mod.F90: -------------------------------------------------------------------------------- 1 | module shr_flds_mod 2 | 3 | use shr_kind_mod , only : CX => shr_kind_CX, CXX => shr_kind_CXX 4 | use shr_sys_mod , only : shr_sys_abort 5 | 6 | implicit none 7 | public 8 | 9 | !---------------------------------------------------------------------------- 10 | ! for the domain 11 | !---------------------------------------------------------------------------- 12 | 13 | character(CXX) :: shr_flds_dom_coord 14 | character(CXX) :: shr_flds_dom_other 15 | 16 | end module shr_flds_mod 17 | -------------------------------------------------------------------------------- /tools/MakeRedsky.sh: -------------------------------------------------------------------------------- 1 | #!/bin/csh 2 | 3 | source /usr/share/Modules/init/csh 4 | module purge 5 | module load intel/13.0 6 | module load openmpi-intel/1.6 7 | 8 | setenv NETCDFROOT /projects/ccsm/yellowstone/netcdf-4.3.2-intel-13.0-openmpi-1.6 9 | setenv PATH $NETCDFROOT/bin:$PATH 10 | setenv LD_LIBRARY_PATH $NETCDFROOT/lib:$LD_LIBRARY_PATH 11 | setenv NETCDF_INCLUDES $NETCDFROOT/include 12 | setenv NETCDF_LIBS $NETCDFROOT/lib 13 | 14 | setenv PNETCDFROOT $NETCDFROOT 15 | 16 | setenv USER_FC ifort 17 | 18 | gmake LIB_NETCDF=$NETCDF_LIBS INC_NETCDF=$NETCDF_INCLUDES NETCDF=$NETCDFROOT LDFLAGS="-L$NETCDF_LIBS -lnetcdff -lnetcdf"#! /bin/csh -f 19 | -------------------------------------------------------------------------------- /tools/cprnc/Depends: -------------------------------------------------------------------------------- 1 | cprnc.o: cprnc.F90 filestruct.o compare_vars_mod.o utils.o 2 | filestruct.o: filestruct.F90 prec.o 3 | prec.o : prec.F90 4 | compare_vars_mod.o: compare_vars_mod.F90 prec.o utils.o filestruct.o 5 | compare_vars_mod.F90 : compare_vars_mod.F90.in 6 | utils.o : utils.F90 filestruct.o prec.o 7 | -------------------------------------------------------------------------------- /tools/cprnc/prec.F90: -------------------------------------------------------------------------------- 1 | module prec 2 | ! 3 | ! Constants for setting precision 4 | ! 5 | integer, parameter :: r4 = selected_real_kind (6) 6 | integer, parameter :: r8 = selected_real_kind (12) 7 | integer, parameter :: i4 = selected_int_kind (6) 8 | end module prec 9 | -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/clm2.h0.subset.control.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/clm2.h0.subset.control.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/clm2.h0.subset.test.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/clm2.h0.subset.test.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/clm2.h1.subset.control.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/clm2.h1.subset.control.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/clm2.h1.subset.test.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/clm2.h1.subset.test.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/control.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/control.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/control_0d.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/control_0d.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/control_multipleTimes_someTimeless.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/control_multipleTimes_someTimeless.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/control_noTime.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/control_noTime.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/copy.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/copy.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/cpl.hi.subset.control.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/cpl.hi.subset.control.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/cpl.hi.subset.test.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/cpl.hi.subset.test.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/diffs_0d.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/diffs_0d.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/diffs_in_fill.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/diffs_in_fill.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/diffs_in_vals.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/diffs_in_vals.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/diffs_in_vals_and_diffs_in_fill.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/diffs_in_vals_and_diffs_in_fill.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/diffs_in_vals_and_fill.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/diffs_in_vals_and_fill.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/lon_differs.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/lon_differs.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/multipleTimes_someTimeless_diffs_in_vals_and_fill.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/multipleTimes_someTimeless_diffs_in_vals_and_fill.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/noTime_diffs_in_vals_and_fill.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/noTime_diffs_in_vals_and_fill.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/vals_differ_by_1.1.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/vals_differ_by_1.1.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/vals_differ_by_1.1_somewhere.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/vals_differ_by_1.1_somewhere.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/vals_differ_by_varying_amounts.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/vals_differ_by_varying_amounts.nc -------------------------------------------------------------------------------- /tools/cprnc/test_inputs/vals_differ_by_varying_amounts2.nc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/cprnc/test_inputs/vals_differ_by_varying_amounts2.nc -------------------------------------------------------------------------------- /tools/load_balancing_tool/tests/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/tools/load_balancing_tool/tests/__init__.py -------------------------------------------------------------------------------- /tools/mapping/check_maps/.gitignore: -------------------------------------------------------------------------------- 1 | ESMF_RegridWeightGenCheck 2 | src/*.o 3 | *.nc 4 | *.Log 5 | -------------------------------------------------------------------------------- /tools/mapping/gen_domain_files/.gitignore: -------------------------------------------------------------------------------- 1 | gen_domain 2 | -------------------------------------------------------------------------------- /tools/mapping/gen_domain_files/INSTALL: -------------------------------------------------------------------------------- 1 | ============ 2 | HOW TO BUILD 3 | ============ 4 | 5 | (1) $ cd src 6 | (2) $ ../../../configure --macros-format Makefile --mpilib mpi-serial 7 | Bash users: 8 | (3) $ (. ./.env_mach_specific.sh ; gmake) 9 | csh users: 10 | (3) $ (source ./.env_mach_specific.csh ; gmake) 11 | 12 | Note: in the second step, you may need to include "--machine [machine name]", 13 | where [machine name] is the name of the machine you are building on. In most 14 | cases configure can figure that out on its own, but if you get an error that is 15 | the first fix to try. Also, some machines have dedicated build nodes, so you 16 | might need to SSH to another node before the 'gmake' step. 17 | 18 | -------------------------------------------------------------------------------- /tools/mapping/gen_domain_files/src/.gitignore: -------------------------------------------------------------------------------- 1 | .env_mach* 2 | env_mach* 3 | Depends* 4 | Macros.make 5 | *.o 6 | *.mod 7 | *.optrpt 8 | -------------------------------------------------------------------------------- /tools/mapping/gen_domain_files/src/Filepath: -------------------------------------------------------------------------------- 1 | . 2 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/.gitignore: -------------------------------------------------------------------------------- 1 | *.Log 2 | *.nc 3 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/gen_ESMF_mapping_file/.gitignore: -------------------------------------------------------------------------------- 1 | .env_mach* 2 | env_mach* 3 | Depends* 4 | *.Log 5 | *.nc 6 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/runoff_to_ocn/.gitignore: -------------------------------------------------------------------------------- 1 | runoff_map 2 | *.nc 3 | obj 4 | src/*.o 5 | src/*.mod 6 | src/*.optrpt 7 | src/Macros.make 8 | src/.env_mach* 9 | src/env_mach* 10 | src/makdep 11 | src/*.d 12 | src/Depends* 13 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/runoff_to_ocn/map_wr50a_to_ar9v4_nnsm_e1000r300.nml: -------------------------------------------------------------------------------- 1 | &input_nml 2 | gridtype = 'scrip' 3 | file_roff = '/glade/p/cesm/cseg/mapping/grids/wr50a_090614.nc' 4 | file_ocn = '/glade/p/cesm/cseg/mapping/grids/ar9v4_100920.nc' 5 | file_nn = 'map_wr50a_to_ar9v4_nearestdtos_170324.nc' 6 | file_smooth = 'map_ar9v4_to_ar9v4_sm_e1000r300_170324.nc' 7 | file_new = 'map_wr50a_to_ar9v4_nnsm_e1000r300_170324.nc' 8 | title = 'runoff map: wr50a -> ar9v4, nearest neighbor and smoothed' 9 | eFold = 1000000.0 10 | rMax = 300000.0 11 | step1 = .true. 12 | step2 = .true. 13 | step3 = .true. 14 | / 15 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/runoff_to_ocn/map_wr50a_to_gx3v7_nnsm_e1000r300.nml: -------------------------------------------------------------------------------- 1 | &input_nml 2 | gridtype = 'scrip' 3 | file_roff = '/glade/p/cesm/cseg/mapping/grids/wr50a_090614.nc' 4 | file_ocn = '/glade/p/cesm/cseg/mapping/grids/gx3v7_120309.nc' 5 | file_nn = 'map_wr50a_to_gx3v7_nearestdtos_170324.nc' 6 | file_smooth = 'map_gx3v7_to_gx3v7_sm_e1000r300_170324.nc' 7 | file_new = 'map_wr50a_to_gx3v7_nnsm_e1000r300_170324.nc' 8 | title = 'runoff map: wr50a -> gx3v7, nearest neighbor and smoothed' 9 | eFold = 1000000.0 10 | rMax = 300000.0 11 | step1 = .true. 12 | step2 = .true. 13 | step3 = .true. 14 | / 15 | -------------------------------------------------------------------------------- /tools/mapping/gen_mapping_files/runoff_to_ocn/maps/.gitignore: -------------------------------------------------------------------------------- 1 | *.nc 2 | -------------------------------------------------------------------------------- /tools/mapping/map_field/.gitignore: -------------------------------------------------------------------------------- 1 | src/.env_mach* 2 | src/env_mach* 3 | src/Macros.make 4 | src/Depends* 5 | src/*.o 6 | src/*.optrpt 7 | map_field 8 | -------------------------------------------------------------------------------- /tools/mapping/map_field/INSTALL: -------------------------------------------------------------------------------- 1 | ============ 2 | HOW TO BUILD 3 | ============ 4 | 5 | (1) $ cd src 6 | (2) $ ../../../configure --macros-format Makefile --mpilib mpi-serial 7 | Bash users: 8 | (3) $ (. ./.env_mach_specific.sh ; gmake) 9 | csh users: 10 | (3) $ (source ./.env_mach_specific.csh ; gmake) 11 | 12 | Note: in the second step, you may need to include "--machine [machine name]", 13 | where [machine name] is the name of the machine you are building on. In most 14 | cases configure can figure that out on its own, but if you get an error that is 15 | the first fix to try. Also, some machines have dedicated build nodes, so you 16 | might need to SSH to another node before the 'gmake' step. 17 | 18 | -------------------------------------------------------------------------------- /tools/mapping/map_field/src/Filepath: -------------------------------------------------------------------------------- 1 | . 2 | -------------------------------------------------------------------------------- /tools/statistical_ensemble_test/pyCECT/beta06_ens_excluded_varlist.json: -------------------------------------------------------------------------------- 1 | { 2 | "ExcludedVar": ["SWCF","LWCF","BURDEN1","BURDEN2","BURDEN3","TGCLDCWP","EMISCLD","H2SO4_SRF","ICEFRAC","LANDFRAC","OCNFRAC","PHIS","SOLIN","TSMN","TSMX","SNOWHICE","AEROD_v"] 3 | } 4 | -------------------------------------------------------------------------------- /tools/statistical_ensemble_test/pyCECT/beta06_ens_excluded_varlist_a.json: -------------------------------------------------------------------------------- 1 | { 2 | "ExcludedVar": ["H2SO4_SRF","ICEFRAC","LANDFRAC","OCNFRAC","PHIS","SOLIN","TSMN","TSMX","SNOWHICE","AEROD_v"] 3 | } 4 | -------------------------------------------------------------------------------- /tools/statistical_ensemble_test/pyCECT/exclude_empty.json: -------------------------------------------------------------------------------- 1 | { 2 | "ExcludedVar": [] 3 | } 4 | -------------------------------------------------------------------------------- /tools/statistical_ensemble_test/pyCECT/pop_ensemble.json: -------------------------------------------------------------------------------- 1 | { 2 | "Var3d": ["UVEL","VVEL","TEMP","SALT"], 3 | "Var2d": ["SSH"] 4 | } 5 | -------------------------------------------------------------------------------- /tools/statistical_ensemble_test/pyCECT/pyEnsSumPop_test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | #BSUB -n 12 3 | #BSUB -q regular 4 | #BSUB -R "span[ptile=1]" 5 | #BSUB -a poe 6 | #BSUB -N 7 | #BSUB -x 8 | #BSUB -o pop.%J.stdout 9 | #BSUB -e pop.%J.stdout 10 | #BSUB -J pop 11 | #BSUB -P STDD0002 12 | #BSUB -W 3:25 13 | #BSUB -u haiyingx@ucar.edu 14 | 15 | export MP_LABELIO=yes; 16 | export MP_COREFILE_FORMAT=lite 17 | mpirun.lsf python pyEnsSumPop.py --verbose --indir /glade/scratch/haiyingx/pop_ensemble_data60/ --sumfile /glade/scratch/haiyingx/pop.ens.sum.2.nc --tslice 0 --nyear 1 --nmonth 12 --npert 80 --jsonfile pop_ensemble.json --mpi_enable --zscoreonly 18 | -------------------------------------------------------------------------------- /utils/perl5lib/File/Copy/.exists: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CESM-Development/cime/53a35fc314d5a958f0ebc3f15dca29bd126c9255/utils/perl5lib/File/Copy/.exists --------------------------------------------------------------------------------