diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 000000000..a52e10850 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,56 @@ +# This CITATION.cff file was generated with cffinit. +# Visit https://bit.ly/cffinit to generate yours today! + +cff-version: 1.2.0 +title: enCore Community Land Model (eCLM) +message: >- + If you use this software, please cite it using the + metadata from this file. +type: software +authors: + - given-names: Paul + family-names: Rigor + orcid: 'https://orcid.org/0009-0003-5256-9215' + - given-names: Stefan + family-names: Poll + orcid: 'https://orcid.org/0000-0003-2527-0747' + - given-names: Marco + family-names: van Hulten + orcid: 'https://orcid.org/0000-0002-3045-4949' + - given-names: Ana + family-names: González-Nicolás + orcid: 'https://orcid.org/0000-0003-2869-8255' + - given-names: Johannes + family-names: Keller + orcid: 'https://orcid.org/0000-0003-0813-7493' + - given-names: Daniel + family-names: Caviedes-Voullieme + orcid: 'https://orcid.org/0000-0001-7871-7544' + - given-names: Harrie-Jan + family-names: Hendricks-Franssen + orcid: 'https://orcid.org/0000-0002-0004-8114' + - given-names: Klaus + family-names: Goergen + orcid: 'https://orcid.org/0000-0002-4208-3444' + - given-names: Stefan + family-names: Kollet + orcid: 'https://orcid.org/0000-0003-0095-1554' +identifiers: + - type: doi + value: 10.5281/zenodo.17967419 + description: >- + Developing the enCore community land model (eCLM): + adapting community land model version 5 (CLM5) to fit + into modular earth system simulation platforms + - type: swh + value: 'swh:1:dir:a429f9a169583bbe59562895161cb8b799b9d94d' + description: Software Heritage ID + - type: url + value: 'https://helmholtz.software/software/eclm' + description: Helmholtz Research Software Directory +repository-code: 'https://github.com/HPSCTerrSys/eCLM' +url: 'https://helmholtz.software/software/eclm' +repository: 'https://hpscterrsys.github.io/eCLM' +keywords: + - 'land surface model, Earth system model, Fortran, HPC' +license: MIT diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 000000000..3dfaf1ec1 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,29 @@ +This repository contains open source software developed and maintained by [HPSC TerrSys]. + +Contributions are welcome! First and foremost, contributions are subject to the [Contributor Code of Conduct] and we do our best to adhere to them. If that sounds reasonable to you, you can start contributing in two ways: + +1. **Asking questions or reporting problems via the [issue tracker]**. Browse through open issues to get ideas on how they are typically written up. We appreciate well-written issues that follow these guidelines: + - [How to Report Bugs Effectively](https://www.chiark.greenend.org.uk/~sgtatham/bugs.html) + - [How to Ask Questions the Smart Way](https://www.catb.org/esr/faqs/smart-questions.html#beprecise) + +2. **Modify the documentation or code**. Proposed changes must be linked to an open issue (see previous item) and go through the standard [Github pull request] process, which is explained below in brief: + 1. [Fork] this repo and then [clone] it to your local PC. + 2. [Create a branch]. This branch will contain your proposed fixes/features. + 3. Make changes on your branch, and then regularly [commit] and [push] changes. Also, write good `git commit` messages: a good one answers the question "what is the most interesting aspect of this commit?" in as few words as possible. + 4. When you're ready to share your fixes/new feature, [create a pull request (PR)]. Mark it as a [draft] if you intend to keep working on it; a draft PR is also a good time to get early feedback from your work. + 5. Mark your PR as _Ready_ to start the review process. Wait for the maintainers to provide comments, and then address their review comments as they come. + 6. Changes will be accepted if it **(1)** passes all automated tests and **(2)** at least one maintainer approved the PR. + 7. **Optional**: Attach experimental results in the PR discussion (see [example here]). Well-documented PRs are highly appreciated and are more likely to get accepted. + +[HPSC TerrSys]: https://github.com/HPSCTerrSys?view_as=public +[Contributor Code of Conduct]: https://www.contributor-covenant.org/version/3/0/code_of_conduct +[issue tracker]: https://github.com/HPSCTerrSys/eCLM/issues +[Github pull request]: https://docs.github.com/en/pull-requests/reference/pull-requests +[Fork]: https://docs.github.com/en/pull-requests/how-tos/work-with-forks/fork-a-repo?versionId=free-pro-team%40latest&productId=pull-requests&restPage=reference%2Cpull-requests&search-overlay-input=branch&search-overlay-ask-ai=true#forking-a-repository +[clone]: https://docs.github.com/en/pull-requests/how-tos/work-with-forks/fork-a-repo?versionId=free-pro-team%40latest&productId=pull-requests&restPage=reference%2Cpull-requests&search-overlay-input=branch&search-overlay-ask-ai=true#cloning-your-forked-repository +[Create a branch]: https://docs.github.com/en/pull-requests/how-tos/commit-changes/managing-branches-within-your-repository#creating-a-branch +[commit]: https://github.com/git-guides/git-commit +[push]: https://github.com/git-guides/git-push +[Create a pull request (PR)]: https://docs.github.com/en/pull-requests/how-tos/create-pull-requests/creating-a-pull-request-from-a-fork +[draft]: https://docs.github.com/en/pull-requests/reference/pull-requests#draft-pull-requests +[example here]: https://github.com/HPSCTerrSys/eCLM/pull/101 diff --git a/LICENSE b/LICENSE index 1ae8a0671..269d207ac 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2020-2025, Centre for High-Performance Scientific Computing in Terrestrial Systems (HPSC TerrSys) +Copyright (c) 2020-2026, Centre for High-Performance Scientific Computing in Terrestrial Systems (HPSC TerrSys) Copyright (c) 2005-2018, University Corporation for Atmospheric Research (UCAR) All rights reserved. diff --git a/README.md b/README.md index 3af2d8e24..2dc71b02e 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,24 @@ # eCLM -[![CI](https://github.com/HPSCTerrSys/eCLM/actions/workflows/build_and_run_eCLM.yml/badge.svg)](https://github.com/HPSCTerrSys/eCLM/actions/workflows/build_and_run_eCLM.yml) -[![docs](https://github.com/HPSCTerrSys/eCLM/actions/workflows/docs.yml/badge.svg)](https://github.com/HPSCTerrSys/eCLM/actions/workflows/docs.yml) +[![helmholtz rsd](https://img.shields.io/badge/helmholtz.software-eclm-00a3e3)](https://helmholtz.software/software/eclm) [![latest tag](https://badgen.net/github/tag/HPSCTerrSys/eCLM)](https://github.com/HPSCTerrSys/eCLM/tags) eCLM is based from [Community Land Model 5.0 (CLM5.0)]. It has the same modelling capabilities as CLM5 but with a more simplified infrastructure for build and namelist generation. The build system is handled entirely by CMake and namelists are generated through a small set of Python scripts. Only Fortran source codes necessary for a functional land model simulation were imported from CLM5. Unlike CLM5, there are no built-in batch scripts in eCLM. It is up to system maintainers or users to craft their own workflows by combining the basic tools in this repo plus the native tools in their respective platforms. -> [!WARNING] -> eCLM is still experimental and being extensively tested. Use it at your own risk! +## Documentation -## Usage +Check our online docs at https://hpscterrsys.github.io/eCLM -Please check the documentation at https://hpscterrsys.github.io/eCLM +## Contributing + +Feel free to post your questions and problems via the [issue tracker]. We also welcome [pull requests]. Before opening an issue or a pull request, please review our **[contribution guidelines]**. + +For general inquiries, leave us a message on our [eCLM Matrix channel]. [Community Land Model 5.0 (CLM5.0)]: https://github.com/ESCOMP/CTSM/tree/release-clm5.0 +[issue tracker]: https://github.com/HPSCTerrSys/eCLM/issues +[pull requests]: https://github.com/HPSCTerrSys/eCLM/pulls +[contribution guidelines]: CONTRIBUTING.md +[eCLM Matrix channel]: https://matrix.to/#/!UooUiDWmcOwQXoktJt:fz-juelich.de?via=fz-juelich.de&via=matrix.org