https://github.com/climlab/climlab-sbm-convection

https://github.com/climlab/climlab-sbm-convection

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 3 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    1 of 2 committers (50.0%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.5%) to scientific vocabulary

Keywords from Contributors

archival projection profiles interactive generic sequences ecosystem-modeling gridding autograding hacking
Last synced: 7 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: climlab
  • License: mit
  • Language: Fortran
  • Default Branch: main
  • Size: 21.2 MB
Statistics
  • Stars: 2
  • Watchers: 2
  • Forks: 1
  • Open Issues: 3
  • Releases: 2
Created about 2 years ago · Last pushed 8 months ago
Metadata Files
Readme License

README.md

Simplified Betts-Miller convection scheme

Build and test

Brian Rose, University at Albany

About

This is a stand-alone Python wrapper for the Simplified Betts-Miller convection scheme described by Frierson (2007), J. Atmos. Sci. 64, doi:10.1175/JAS3935.1.

Thanks to Dargan Frierson for sharing the original Fortran code.

The primary use-case is to serve as a moist convection driver option for climlab, but it can also be used as a stand-alone model. This is a lightweight wrapper that emulates the Fortran interface as closely as possible. Dargan Frierson's original Fortran code is bundled here in the src directory for reference.

Installing

Pre-built binaries for many platforms are available from conda-forge.

To install in the current environment: conda install climlab-sbm-convection --channel conda-forge or create a self-contained environment: conda create --name my_env python=3.11 climlab-sbm-convection --channel conda-forge conda activate my_env

See below for instructions on how to build from source.

Building from source

Build environment

Here are instructions to create a build environment (including Fortran compiler) with conda/mamba

Starting from the root of the climlab-sbm-convection repo (example for Apple M1 machine, see ./ci/ for other environment files): mamba env create --file ./ci/requirements-macos-arm64.yml conda activate sbm_build_env

Or, to specify the Python version, you can do mamba create --name sbm_build_env python=3.11 --channel conda-forge mamba env update --file ./ci/requirements-macos-arm64.yml conda activate sbm_build_env

Building and installing into the Python environment

From the root of the repository, do this: python -m pip install . --no-deps -vv

Running tests

To run tests, do this from any directory other than the climlab-emanuel-convection repo: pytest -v --pyargs climlab_sbm_convection

Example usage

For now, see the notebooks in the docs directory of this repo.

An appropriate runtime environment for these notebooks is defined in the file docs/example_env.yml. To create this environment and launch the notebook server, navigate to the docs directory and do this:

conda env create -f example_env.yml conda activate sbm_example_env jupyter lab

Version history

  • Version 0.2 (released 8/2/2024) implements support for a non-uniform relative humidity parameter. The subroutine betts_miller now expects array input for relative humidity. The call signature for this subroutine has changed.
  • Version 0.1 is the first public release.

Owner

  • Name: climlab
  • Login: climlab
  • Kind: organization

Home of climlab software and related user content

GitHub Events

Total
  • Issues event: 2
  • Issue comment event: 3
  • Push event: 4
  • Pull request review event: 1
  • Pull request event: 10
Last Year
  • Issues event: 2
  • Issue comment event: 3
  • Push event: 4
  • Pull request review event: 1
  • Pull request event: 10

Committers

Last synced: 10 months ago

All Time
  • Total Commits: 56
  • Total Committers: 2
  • Avg Commits per committer: 28.0
  • Development Distribution Score (DDS): 0.018
Past Year
  • Commits: 45
  • Committers: 2
  • Avg Commits per committer: 22.5
  • Development Distribution Score (DDS): 0.022
Top Committers
Name Email Commits
Brian Rose b****e@a****u 55
dependabot[bot] 4****] 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 10 months ago


Dependencies

setup.py pypi