{"id":13948816,"url":"https://github.com/NOAA-GFDL/FMS","last_synced_at":"2025-07-20T10:32:50.215Z","repository":{"id":16140583,"uuid":"18886042","full_name":"NOAA-GFDL/FMS","owner":"NOAA-GFDL","description":"GFDL's Flexible Modeling System","archived":false,"fork":false,"pushed_at":"2025-07-09T16:46:53.000Z","size":70065,"stargazers_count":111,"open_issues_count":80,"forks_count":151,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-07-14T06:04:49.872Z","etag":null,"topics":["climate","climate-model","fms","fortran","gfdl","infrastructure","netcdf"],"latest_commit_sha":null,"homepage":null,"language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NOAA-GFDL.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":"supported_interfaces.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-04-17T16:49:09.000Z","updated_at":"2025-07-09T16:46:59.000Z","dependencies_parsed_at":"2023-09-21T19:45:29.481Z","dependency_job_id":"55ca05df-ec7a-4076-b2df-82b720812dc6","html_url":"https://github.com/NOAA-GFDL/FMS","commit_stats":{"total_commits":2391,"total_committers":90,"mean_commits":"26.566666666666666","dds":0.8707653701380176,"last_synced_commit":"44a211a7540576db0237a9e7d2edcedfbb2eb155"},"previous_names":[],"tags_count":97,"template":false,"template_full_name":null,"purl":"pkg:github/NOAA-GFDL/FMS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOAA-GFDL%2FFMS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOAA-GFDL%2FFMS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOAA-GFDL%2FFMS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOAA-GFDL%2FFMS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NOAA-GFDL","download_url":"https://codeload.github.com/NOAA-GFDL/FMS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NOAA-GFDL%2FFMS/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265412357,"owners_count":23760791,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["climate","climate-model","fms","fortran","gfdl","infrastructure","netcdf"],"created_at":"2024-08-08T05:01:31.764Z","updated_at":"2025-07-20T10:32:50.191Z","avatar_url":"https://github.com/NOAA-GFDL.png","language":"Fortran","funding_links":[],"categories":["Observation and Conservation of Ecosystems","Climate Change"],"sub_categories":["Ocean and Climate","Earth and Climate Modeling"],"readme":"# License Announcement\n\nFMS will switch to the\n[Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0.txt)\nwith the 2025.04 or 2026.01 release.  Please refer to\n[issue 1683 on changing the license](https://github.com/NOAA-GFDL/FMS/issues/1683)\nto participate in or follow any discussion on the topic.\n\n# Modeling Framework: Flexible Modeling System (FMS)\n\nToday’s climate models simulate highly complex systems. In response to\nincreasingly complex models, the climate community has developed tools and\nmethodologies to facilitate the modeling process and many common tasks (e.g.,\ncalendar management, grid generation, I/O). Such frameworks come with a number\nof advantages, including decreased model development time and increased\ncompatibility of interfaces.\n\nThe Flexible Modeling System (FMS) is a software environment that supports the\nefficient development, construction, execution, and scientific interpretation of\natmospheric, oceanic, and climate system models. This framework allows\nalgorithms to be expressed on a variety of high-end computing architectures\nusing common and easy-to-use expressions of the underlying platforms, spanning\ndistributed and shared memory, as well as high-performance architectures.\nScientific groups at GFDL can develop new physics and new algorithms\nconcurrently, and coordinate periodically through this framework.\n\n![FMS Framework](docs/images/FMS.gif)\n\nModeling frameworks for the construction of coupled models, made from\nindependent model components, are now prevalent across this field. FMS was one\nof the first frameworks to be developed — since the advent of the Cray T3E in\n1998 — and is still in use and under development today, using new architectures\nand new algorithms.\n\n## What is FMS\n\nThe Flexible Modeling System (FMS) is a software framework for supporting the\nefficient development, construction, execution, and scientific interpretation of\natmospheric, oceanic, and climate system models.  FMS consists of the\nfollowing:\n\n1. A software infrastructure for constructing and running atmospheric, oceanic,\nand climate system models. This infrastructure includes software to handle\nparallelization, input and output, data exchange between various model grids,\norchestration of the time stepping, makefiles, and simple sample run scripts.\nThis infrastructure should largely insulate FMS users from machine-specific\ndetails.\n2. A standardization of the interfaces between various component models\nincluding software for standardizing, coordinating, and improving diagnostic\ncalculations of FMS-based models, and input data preparation for such models.\nCommon preprocessing and post-processing software are included to the extent\nthat the needed functionality cannot be adequately provided by available\nthird-party software.\n3. Contributed component models that are subjected to a rigorous software\nquality review and improvement process. The development and initial testing of\nthese component models is largely a scientific question, and would not fall\nunder FMS. The quality review and improvement process includes consideration of\n(A) compliance with FMS interface and documentation standards to ensure\nportability and inter-operability, (B) understandability (clarity and\nconsistency of documentation, comments, interfaces, and code), and (C) general\ncomputational efficiency without algorithmic changes.\n4. A standardized technique for version control and dissemination of the\nsoftware and documentation.\n\nFMS does not include the determination of model configurations, parameter\nsettings, or the choice amongst various options. These decisions require\nscientific research. Similarly, the development of new component models is a\nscientific concern that is outside of the direct purview of FMS. Nonetheless,\ninfrastructural changes to enable such developments are within the scope of FMS.\nThe collaborative software review process of contributed models is therefore an\nessential facet of FMS.\n\n## Dependencies and installation\n\nThe following external libraries are required when building libFMS\n\n* NetCDF C and Fortran (77/90) headers and libraries\n* Fortran 2003 standard compiler\n* Fortran compiler that supports Cray Pointer\n* MPI C and Fortran headers and libraries (optional)\n* Libyaml header and libraries (optional)\n* Linux or Unix style system\n\nPlease see the [Build and Installation page](http://noaa-gfdl.github.io/FMS/build.html)\nfor more information on building with each build system.\n\n## Compiler Support\n\nFor most production environments and large scale regression testing, FMS is currently compiled with the\nIntel classic compiler (ifort) but will be transitioning to the llvm-based ifx intel compiler when it is\navailable for production.\n\nBelow shows the status of our compiler support for various compilers and versions. Testing was done on\nCentOS 8, with additional testing using a larger cray SLES system. MPICH is used as the MPI library\nexcept for the intel compilers, which use intel's mpi library.\nCompilers used in our Github continuous integration testing are in bold.\n\n|Compiler                | Version |Builds Successfully        | Unit Testing        |\n|------------------------|---------|---------------------------|---------------------|\n|**intel classic(ifort)**| 2021.6.0| yes                       | passes              |\n|**GNU (gfortran)**      | 9.3.0   | yes                       | passes              |\n|intel oneapi (ifx)      | 2021.6.0| yes                       | passes              |\n|GNU (gfortran)          | 11.2.0  | yes                       | passes              |\n|HP/Cray (cce)           | 9.1.1   | yes                       | not passing         |\n|Nvidia/PGI(nvfortran)   | 22.9    | no                        | not passing         |\n|AMD (aocc)              | 3.2.0   | no(compiles,fails to link)| not passing         |\n\n## Documentation\n\nSource code documentation for the FMS code base is available at http://noaa-gfdl.github.io/FMS.\nThe documentation is generated by doxygen and updated upon releases, and a copy of the site\ncan be obtained through the `gh-pages` branch or generated manually with\n`./configure --enable-docs \u0026\u0026 make -C docs`. For more information on documenting the code\nwith doxygen please see the\n[documentation style guide](http://noaa-gfdl.github.io/FMS/md_docs_doxygenGuide.html).\n\n# Disclaimer\n\nThe United States Department of Commerce (DOC) GitHub project code is provided\non an 'as is' basis and the user assumes responsibility for its use. DOC has\nrelinquished control of the information and no longer has responsibility to\nprotect the integrity, confidentiality, or availability of the information. Any\nclaims against the Department of Commerce stemming from the use of its GitHub\nproject will be governed by all applicable Federal law. Any reference to\nspecific commercial products, processes, or services by service mark,\ntrademark, manufacturer, or otherwise, does not constitute or imply their\nendorsement, recommendation or favoring by the Department of Commerce. The\nDepartment of Commerce seal and logo, or the seal and logo of a DOC bureau,\nshall not be used in any manner to imply endorsement of any commercial product\nor activity by DOC or the United States Government.\n\nThis project code is made available through GitHub but is managed by NOAA-GFDL\nat https://gitlab.gfdl.noaa.gov.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNOAA-GFDL%2FFMS","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNOAA-GFDL%2FFMS","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNOAA-GFDL%2FFMS/lists"}