A curated list of open technology projects to sustain a stable climate, energy supply, biodiversity and natural resources.

TurbulenceConvection.jl

Provides a framework for testing parameterizations of clouds and turbulence.
https://github.com/CliMA/TurbulenceConvection.jl

Category: Atmosphere
Sub Category: Atmospheric Composition and Dynamics

Keywords from Contributors

climate data-assimilation fluid-dynamics climate-change meteorology ode symbolic-computing

Last synced: about 2 hours ago
JSON representation

Repository metadata

A turbulence-convection single column model cloud parameterization.

README.md

TurbulenceConvection.jl

Documentation dev
DOI DOI
Docs Build docs build
GHA CI gha ci
Code Coverage codecov

TurbulenceConvection (Single Column Atmospheric Model in Julia) provides a framework for testing parameterizations of clouds and turbulence.
It is particularly designed to support eddy-diffusivity mass-flux modeling frameworks.

Information about the EDMF parameterization implemented in TurbulenceConvection can be found in:

Tan, Z., Kaul, C. M., Pressel, K. G., Cohen, Y., Schneider, T., and Teixeira, J. (2018)
An extended eddy-diffusivity mass-flux scheme for unified representation of
subgrid-scale turbulence and convection.
Journal of Advances in Modeling Earth Systems. doi

Cohen, Y., Lopez-Gomez, I., Jaruga, A., He, J., Kaul, C., and Schneider, T. (2020) Unified entrainment and detrainment closures for extended eddy-diffusivity mass-flux schemes. Journal of Advances in Modeling Earth Systems, 12, e2020MS002162. doi

Lopez-Gomez, I., Cohen, Y., He, J., Jaruga, A., Schneider, T. (2020) A generalized mixing length closure for eddy-diffusivity mass-flux schemes of turbulence and convection. Journal of Advances in Modeling Earth Systems, 12, e2020MS002161. doi

He, J., Cohen, Y., Lopez-Gomez, I., Jaruga, A., Schneider, T. (2021) An improved perturbation pressure closure for eddy-diffusivity mass-flux schemes. preprint

The code is written in Julia, and was translated from SCAMPy for the commit 496dad0c2438235684823511cacbf5761d6a237c.

Code Contributors (alphabetical):
Yair Cohen (Caltech),
Jia He (Caltech),
Anna Jaruga (Caltech),
Colleen Kaul (PNNL) --initial/primary developer of SCAMPy,
Charles Kawczynski (Caltech),
Ignacio Lopez-Gomez (Caltech),
Kyle Pressel (PNNL),

Additional Acknowledgements:
Tapio Schneider (Caltech),
Joao Teixeira (JPL).

User Installation

Installation is easy:

(@v1.6) pkg> add TurbulenceConvection

TurbulenceConvection.jl requires Julia 1.6 or higher. If you plan to develop TurbulenceConvection.jl, you may want to clone it instead:

git clone https://github.com/CliMA/TurbulenceConvection.jl
cd TurbulenceConvection.jl
julia --project=integration_tests
julia> ]
pkg> instantiate

ClimaCore.jl, a dependency of TC.jl, will by default attempt to run code on a GPU device if available. TC.jl is not compatible with GPUs, and the following environmental variable needs to be exported to prevent GPU attempts:

export CLIMACOMMS_DEVICE=CPU

Running

$ cd TurbulenceConvection.jl

TurbulenceConvection.jl can be run in the same way that SCAMPy used to, given one of the following cases:

  • Bomex
  • life_cycle_Tan2018
  • Soares
  • Rico
  • TRMM_LBA
  • ARM_SGP
  • GATE_III
  • DYCOMS_RF01
  • DYCOMS_RF02
  • GABLS

with, for example:

julia --project=integration_tests driver/generate_namelist.jl Soares
julia --project=integration_tests driver/main.jl Soares

or by calling our integraion test driver,

julia --project=integration_tests integration_tests/driver.jl --case Soares

or, interactively, with

julia --project=integration_tests
julia> case_name = "Soares" # default is "Bomex"
julia> include(joinpath("integration_tests", "driver.jl"))

Automated plotting

Upon running a particular experiment (described above), comparison plots (against SCAMPy) are automatically generated in, for example, Output.Bomex.01/stats/comparison/.

Table of prognostic and diagnostic variables

  • Prognostic [✓]
  • Diagnostic [x]
  • NA [-]
Variable Grid-mean Environment Updrafts
u [✓] [x] [x]
v [✓] [x] [x]
w [-] [x] [✓]
θ_liq_ice [✓] [x] [✓]
q_tot [✓] [x] [✓]
a [-] [x] [✓]
tke [x] [✓] [-]
θ′θ′ [x] [✓] [-]
q_tot′q_tot′ [x] [✓] [-]
θ′q_tot′ [x] [✓] [-]

Owner metadata


GitHub Events

Total
Last Year

Committers metadata

Last synced: 6 days ago

Total Commits: 1,092
Total Committers: 11
Avg Commits per committer: 99.273
Development Distribution Score (DDS): 0.312

Commits in past year: 4
Committers in past year: 1
Avg Commits per committer in past year: 4.0
Development Distribution Score (DDS) in past year: 0.0

Name Email Commits
Charles Kawczynski k****s@g****m 751
yairchn y****n@c****u 125
Anna Jaruga a****a@c****u 66
ilopezgp i****p@g****m 63
costachris c****a@g****m 45
Haakon Ludvig Langeland Ervik 4****e 20
CompatHelper Julia c****y@j****g 15
nnelsen n****n@c****u 2
Zhaoyi Shen p****y@g****m 2
Jordan Benjamin j****i@s****u 2
Costa Christopoulos c****s@v****u 1

Committer domains:


Issue and Pull Request metadata

Last synced: 1 day ago

Total issues: 16
Total pull requests: 183
Average time to close issues: 20 days
Average time to close pull requests: 26 days
Total issue authors: 6
Total pull request authors: 9
Average comments per issue: 7.06
Average comments per pull request: 1.43
Merged pull request: 94
Bot issues: 0
Bot pull requests: 54

Past year issues: 0
Past year pull requests: 14
Past year average time to close issues: N/A
Past year average time to close pull requests: about 5 hours
Past year issue authors: 0
Past year pull request authors: 3
Past year average comments per issue: 0
Past year average comments per pull request: 0.0
Past year merged pull request: 1
Past year bot issues: 0
Past year bot pull requests: 8

More stats: https://issues.ecosyste.ms/repositories/lookup?url=https://github.com/CliMA/TurbulenceConvection.jl

Top Issue Authors

  • charleskawczynski (5)
  • Sbozzolo (3)
  • ilopezgp (3)
  • costachris (3)
  • haakon-e (1)
  • JuliaTagBot (1)

Top Pull Request Authors

  • github-actions[bot] (54)
  • costachris (49)
  • charleskawczynski (31)
  • trontrytel (16)
  • ilopezgp (15)
  • yairchn (6)
  • Sbozzolo (5)
  • jbphyswx (4)
  • haakon-e (3)

Top Issue Labels

  • enhancement (2)
  • Reproducibility (1)
  • upstream issue (1)
  • Performance :rocket: (1)
  • help wanted :wave: (1)
  • Code portability (1)
  • bug (1)

Top Pull Request Labels

  • Dependencies :spider_web: (13)
  • Performance :rocket: (8)
  • Performance monitoring :mag::rocket: (4)
  • do not merge (3)
  • Refactor :gear: (3)
  • Continuous Integration :gear: (2)
  • Microphysics :cloud_with_snow: (2)
  • IO :floppy_disk: (1)
  • Type inference (1)
  • Tests :warning: (1)
  • Release (1)
  • ClimaParameters :control_knobs: (1)
  • enhancement (1)
  • bugfix (1)

Package metadata

juliahub.com: TurbulenceConvection

A turbulence-convection single column model cloud parameterization.

  • Homepage: https://clima.github.io/TurbulenceConvection.jl/dev/
  • Documentation: https://docs.juliahub.com/General/TurbulenceConvection/stable/
  • Licenses: Apache-2.0
  • Latest release: 1.3.6 (published 8 months ago)
  • Last Synced: 2025-03-27T01:04:27.224Z (about 1 month ago)
  • Versions: 68
  • Dependent Packages: 1
  • Dependent Repositories: 0
  • Rankings:
    • Dependent repos count: 9.94%
    • Average: 20.605%
    • Stargazers count: 21.414%
    • Dependent packages count: 22.97%
    • Forks count: 28.099%

Dependencies

.github/workflows/CodeCov.yml actions
  • actions/checkout v2.2.0 composite
  • codecov/codecov-action v1.0.7 composite
  • julia-actions/setup-julia latest composite
.github/workflows/DocCleanUp.yml actions
  • actions/checkout v2 composite
.github/workflows/JuliaFormatter.yml actions
  • actions/checkout v2.2.0 composite
  • dorny/paths-filter v2.9.1 composite
  • julia-actions/setup-julia latest composite
  • styfle/cancel-workflow-action 0.4.0 composite
.github/workflows/TagBot.yml actions
  • JuliaRegistries/TagBot v1 composite
.github/workflows/UpDeps.yml actions
  • actions/checkout v2.2.0 composite
  • julia-actions/setup-julia latest composite
  • styfle/cancel-workflow-action 0.4.0 composite
.github/workflows/ci.yml actions
  • actions/checkout v2 composite
  • codecov/codecov-action v1 composite
  • julia-actions/julia-buildpkg v1 composite
  • julia-actions/julia-processcoverage v1 composite
  • julia-actions/julia-runtest v1 composite
  • julia-actions/setup-julia v1 composite
.github/workflows/docs.yml actions
  • actions/checkout v2 composite
  • julia-actions/setup-julia latest composite
.github/workflows/CompatHelper.yml actions

Score: 7.4413203897176174