Recent Releases of RRTMGP.jl

RRTMGP.jl - v1.0.0

RRTMGP v1.0.0

Diff since v0.23.0

  • Breaking: removed the deprecated getters clear_lw_flux, clear_sw_flux,
    toa_flux, top_of_atmosphere_lw_flux_dn, and
    top_of_atmosphere_diffuse_sw_flux_dn, along with the renamed-module aliases
    Vmrs and GrayUtils. Use clear_lw_flux_net, clear_sw_flux_net,
    toa_sw_flux_dn, toa_lw_flux_dn, toa_diffuse_sw_flux_dn,
    VolumeMixingRatios, and GrayAtmosphere.

Merged pull requests:

  • Docs cleanup (#621) (@tapios)
  • Remove deprecated aliases; release v1 (#622) (@tapios)

Closed issues:

  • Remove compat aliases (#611)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 10 days ago

RRTMGP.jl - v0.23.0

RRTMGP v0.23.0

Diff since v0.22.3

v0.23.0

  • Multi-angle longwave quadrature now works. The spectral non-scattering
    longwave solver integrates the Schwarzschild equation along 1-4
    Gauss-Jacobi-5 angles, selected with the n_gauss_angles keyword of
    NoScatLWRTE or RRTMGPSolver (the tables existed, but every kernel read
    only the first angle). The default remains the single-angle diffusivity
    approximation, bit for bit. One angle reproduces the hemispheric
    transmittance 2E₃(τ) to about 2.5%, four angles to better than 0.1%; run
    time grows in proportion to the number of angles. Gray radiation and the
    two-stream longwave solver reject n_gauss_angles > 1 rather than ignore
    it. A prescribed incident longwave flux is now converted to intensity as
    F/π (unchanged for one angle), so the angle-weighted fluxes sum back to
    F. Checked by the new test/angular_discretization.jl.
  • Breaking (renames, with deprecations): clear_lw_flux
    clear_lw_flux_net and clear_sw_fluxclear_sw_flux_net (matching
    lw_flux_net/sw_flux_net); toa_fluxtoa_sw_flux_dn,
    top_of_atmosphere_lw_flux_dntoa_lw_flux_dn, and
    top_of_atmosphere_diffuse_sw_flux_dntoa_diffuse_sw_flux_dn (one
    toa_ prefix for the incident-flux getters; the SwBCs field and the
    solve/solve_gray keyword toa_flux are unchanged). The old names
    forward with a deprecation warning until the next breaking release.
  • Breaking: RadiationOutput fields now match the getters:
    lw_flux_up/lw_flux_dn/lw_flux_net,
    sw_flux_up/sw_flux_dn/sw_direct_flux_dn/sw_flux_net, and net_flux
    (previously lw_up/lw_dn/lw_net, sw_up/sw_dn/sw_direct_dn/
    sw_net, and net). heating_rate and solver are unchanged.
  • The public API is delimited. RRTMGP.PUBLIC_NAMES lists it,
    test/public_api.jl locks it (every listed name defined and documented,
    nothing undeclared on the module surface), and on Julia 1.11 and later the
    list is declared with public. Undocumented helpers became internal
    (get_artifact_path, aerosol_names_docs, gas_names_sw_docs,
    update_views, and the AEROSOL_IDX constant are _-prefixed); the
    interpolation extension points (interp!, extrap!, requires_z,
    uniform_z_p, best_fit_p) gained docstrings and stay public.
  • validate_inputs reports the incident-solar-flux violation as
    toa_sw_flux_dn rather than the storage field name.
  • ClimaAtmos downstream testing moved from GitHub Actions, whose job timed
    out, to Buildkite, which triggers the climaatmos-downstream pipeline
    against the RRTMGP commit under test. ClimaCoupler stays on GitHub Actions.

Merged pull requests:

  • Cleanup toward v1: limit public API, unify variable names, enable multi-angle LW (#619) (@tapios)
  • v0.23 (#620) (@tapios)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 11 days ago

RRTMGP.jl - v0.22.3

RRTMGP v0.22.3

Diff since v0.22.2

Merged pull requests:

  • chore: sync dev guides with central repo (#617) (@github-actions[bot])
  • Docs cleanup and corrections (#618) (@tapios)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 13 days ago

RRTMGP.jl - v0.22.2

RRTMGP v0.22.2

Diff since v0.22.1

Merged pull requests:

  • Ts/vendor dev guides (#614) (@tapios)
  • add set_volume_mixing_ratio for well-mixed gases (#615) (@szy21)
  • set z and metric_scaling for the isothermal boundary layer (#616) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 months ago

RRTMGP.jl - v0.22.1

RRTMGP v0.22.1

Diff since v0.22.0

Merged pull requests:

  • Release v0.22.0 (#612) (@tapios)
  • Allocation-free copy (#613) (@tapios)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 months ago

RRTMGP.jl - v0.22.0

  • Internal compute buffers now use device-dependent physical layouts behind a
    uniform column-first (ncol, nlay/nlev) indexing convention: optical
    properties (OneScalar, TwoStream), source functions (SourceLWNoScat,
    SourceLW2Str, SourceSW2Str), and the broadband flux buffers (FluxLW,
    FluxSW). On the GPU the storage is column-first, giving coalesced access
    (on an A100 at DYAMOND scale this cuts longwave kernel times by 25-36% and
    shortwave all-sky by 14-20%); on the CPU the storage stays vertical-first
    under a lazy PermutedDimsArray wrapper, preserving the stride-1 vertical
    sweeps (and CPU performance) while running the same kernel code.
    The Layer-2 flux getters (lw_flux_up, net_flux, ...) still present
    plain (nlev, ncol) views: they read Fluxes.FluxPresentation arrays that
    update_fluxes! fills from the compute buffers with one fused transposing
    copy per call (so getters remain Array-materializable, broadcastable, and
    reducible on the GPU). The opt-in per-band buffers (FluxBand) keep the
    host-facing (nlev, ncol, n_bnd) layout. Breaking for Layer-1
    (functional-core) users
    : code reading the workspace fields directly
    (slv.flux.flux_up, op.τ, ...) must swap index order to [gcol, ilev]
    or wrap the buffer in Fluxes.lazy_transpose. State inputs
    (AtmosphericState arrays) and all boundary-condition arrays are
    unchanged.
  • New TransposedStateCache: column-first copies of the hot
    AtmosphericState arrays (layer pressure/temperature/dry-air column
    amount/relative humidity, level temperatures), refreshed by one
    permutedims! per spectral solve, so the gas-optics g-point loop reads
    coalesced memory on GPUs. On by default on the GPU (the RTE workspace
    constructors build one; the RRTMGPSolver shares a single cache between
    the longwave and shortwave workspaces) and off (nothing) on the CPU,
    where the state's vertical-first layout is already cache-friendly; pass
    state_cache = nothing to opt out, or pass the same cache to several
    workspaces to share the storage.
  • Documentation reorganized along tutorial / how-to / explanation / reference
    lines: two new executable (Literate.jl) tutorials — "A first radiation
    calculation" and "Radiative-convective equilibrium", which reproduces
    Manabe's classic fixed-relative-humidity climate-sensitivity experiment with
    RRTMGP's clear-sky optics — plus four how-to guides (driving RRTMGP from a
    host model, running on GPUs, caching the lookup tables, per-band fluxes).
    The README now gives a Thermodynamics.jl-style overview with quick starts.
  • Struct docstrings migrated off DocStringExtensions.FIELDS to explicit
    # Fields sections (per the CliMA documentation policy), so field
    descriptions and units render on the API pages without inline field
    docstrings.
  • New unit tests for previously indirect paths: every interpolation /
    bottom-extrapolation scheme against closed forms (including a dry-adiabat
    round-trip through interpolate_levels!), solver-constructor and getter
    guard errors, validate_inputs field-by-field, the incident-longwave-flux
    boundary condition, pointwise deep-atmosphere flux scaling, heating-rate =
    net-flux divergence, gray clip!, aerosol-only LookupBundle round-trips,
    cloud-radiative-effect sign checks in the all-sky tests, and the McICA
    reproducibility tests now also run in Float32.
  • New advisory GPU benchmark ratchet (perf/benchmark_ratchet.jl + a
    soft-fail Buildkite step): the DYAMOND-scale solve_lw!/solve_sw! medians
    are compared against per-GPU baselines committed under
    perf/benchmark_baselines/, flagging wall-time regressions beyond 20%
    without blocking merges. The three DYAMOND benchmark scripts are now
    includable (their sweeps run only when executed as scripts).
  • New docs page "Fortran and paper concordance": tables mapping RRTMGP.jl
    names (containers, RTE/gas-optics/cloud/aerosol kernels) to the Fortran
    rte-rrtmgp mo_*/ty_* names and to the papers whose equations they
    implement, so Fortran-literate readers can navigate instantly.
  • The standalone (Layer-3) path is complete: standard_atmosphere(FT; kind)
    builds an idealized clear-sky AtmosphereProfile (:tropical,
    :midlatitude_summer, :subarctic_winter — analytic two-segment
    temperature, exact hydrostatic pressure, idealized water vapor/ozone,
    present-day well-mixed gases), and solve(profile; method) solves it in one
    call — ClearSkyRadiation (default) or GrayRadiation. Both solve and
    solve_gray now return a documented RadiationOutput struct with stable
    field names (lw_upsw_direct_dn, net, heating_rate, solver);
    solve_gray previously returned a NamedTuple with the same names, so
    field access is unchanged.
  • New prepare_atmosphere!(solver): runs the atmospheric-state preparation
    cascade (level interpolation, isothermal boundary layer, clipping, dry-air
    column amounts) without solving, so hosts can inspect the prepared state —
    the prepare/solve split. update_fluxes! is now literally
    prepare_atmosphere! followed by the three solve/combine steps.
  • Breaking: lookup_tables now returns a typed [LookupBundle] instead of
    a nested (; lookups, lu_kwargs) NamedTuple: stable fields
    (lookup_lw, lookup_sw, cloud/aerosol tables, the name→index maps, and the
    band/gas counts), nothing where a table is absent. Code that indexed the
    NamedTuple (e.g. bundle.lookups.lookup_lw, bundle.lu_kwargs.nbnd_lw) drops
    one level (bundle.lookup_lw, bundle.nbnd_lw).
  • New save_lookup_tables(path, bundle) / load_lookup_tables(path, grid_params)
    cache the lookup tables on disk (Julia Serialization; a same-version cache,
    not an interchange format), so the spectral methods can run without NCDatasets
    once a cache has been generated — e.g. for standalone/classroom use.
  • The CPU and CUDA solver drivers now share device-agnostic per-(g-point,
    column) bodies (*_gpt_col! in src/rte/), removing the duplicated
    orchestration where backend asymmetries repeatedly crept in. As part of the
    unification, the broadband shortwave direct beam sw_direct_flux_dn is now
    accumulated at every level: it was previously meaningful only at the
    surface row (a documented limitation inherited from PR #550), with the rows
    above holding the first g-point's profile on CPU and uninitialized memory on
    GPU.
  • Breaking (with aliases): renamed two modules for clarity — Vmrs
    VolumeMixingRatios and GrayUtilsGrayAtmosphere. The old names remain
    as const aliases for one release and will be removed in 0.24.
  • Breaking: renamed aerosol_idx()aerosol_index_map(), resolving the
    one-character collision with aerosol_index(name) (which returns a single
    index rather than the whole map).
  • Float32 accuracy overhaul of the RTE kernels: series-switch threshold for the
    longwave no-scattering source at eps^(1/4) (was 100·eps), exact γ1 − γ2
    identities in the two-stream k, expm1-based thin-layer factors, a consistent
    off-resonance evaluation of the shortwave direct reflectance/transmittance,
    exact non-cancelling delta-scaling forms, an addition-built direct-beam
    profile, a continuous gas-optics η interpolation at η = 1, and a restructured
    longwave two-stream source (exact 1 ∓ Rdif − Tdif factorizations, so no term
    divides by τ and thin layers keep their real O(τ) emission instead of being
    zeroed below a threshold). Measured Float32↔Float64 broadband agreement
    improves 25–90×: every longwave path now sits at its ~2–5e-4 W/m²
    interpolation-noise floor (from 1.1e-2–3.4e-2). A new ratcheting f32↔f64
    consistency test (test/float32_consistency.jl) locks the gains, and the
    Float32 longwave no-scattering reference tolerances tighten from 0.05 to
    5e-3 W/m².
  • New RRTMGP.Numerics module: every numerical guard constant (k_min,
    τ_thresh, resonance_window, μ₀_min) in one place with its derivation.
  • New opt-in input validation: set RRTMGP.check_values[] = true to have
    update_fluxes! validate solver inputs (pressures/temperatures positive and
    finite, cos_zenith ∈ [-1, 1], emissivity/albedos ∈ [0, 1], VMRs ≥ 0) via
    validate_inputs; off by default and allocation-free when off.
  • Lookup loaders now assert the canonical gas slots the kernels hard-code
    (h2o → 1, o3 → 3) and that temperature_Planck is in Kelvin (the g128 file
    variants store an integer index, which would silently corrupt the Planck
    interpolation).
  • Breaking: the public API is now centered on RRTMGPSolver plus a complete set of named
    getters (layer_temperature, level_pressure, net_flux, ...), built on the functional
    solve_lw!/solve_sw! core. Hosts exchange every input and output through the getters — a
    documented, ClimaCore-free data-exchange contract — and drive the solve with a single
    allocation-free, type-stable update_fluxes! that returns nothing (results are read back
    through the getters).
  • Breaking: removed the deprecated positional-argument constructors that warned to use
    RRTMGPGridParams: the old signatures of OneScalar, TwoStream, FluxLW, FluxSW,
    SourceLWNoScat, SourceLW2Str, SourceSW2Str, NoScatLWRTE, TwoStreamLWRTE,
    NoScatSWRTE, TwoStreamSWRTE, and VmrGM, plus source_func_longwave,
    source_func_shortwave, and init_vmr. Construct these with RRTMGPGridParams (and
    VolumeMixingRatioGlobalMean for VmrGM).
  • Breaking: RRTMGPGridParams now takes domain_nlay (the physical layer count) instead
    of nlay, and adds the isothermal boundary layer internally; the stored nlay field is the
    total. Callers no longer compute domain_nlay + 1 themselves.
  • Breaking: removed the internal RRTMGPData{Order} data-layout types and helpers
    (NVCData/VCData/NCData/NData, set_cols!/set_domain!/domain_view, and the
    index-order tags); the getter-based API does not use them.
  • Lifted the grid-adaptation helpers out of ClimaAtmos into RRTMGP as separable, in-place
    functions over plain (nlay, ncol) array views: interpolate_levels!,
    add_isothermal_boundary_layer!, clip!, and update_concentrations!.
  • clip! now also clamps the spectral solvers' layer/level temperatures into the
    valid range of the optics lookup tables — the tables' first and last reference
    temperatures (lookup.t_ref_min/t_ref_max, 160–355 K for the standard tables),
    read straight from the lookup table — moving the clamp that ClimaAtmos applied
    before every radiation call into RRTMGP's own input preparation. The gray path is
    deliberately not clamped: it uses no lookup tables, and idealized gray atmospheres
    can legitimately reach temperatures outside the lookup range.
  • Added standalone entry points that need no NetCDF lookup tables — solve_gray,
    default_parameters, and heating_rate (in K/s) — for single-column/classroom use.
  • Added optional spectrally-resolved (per-band) fluxes: construct with spectral_fluxes = true,
    then read spectral_{lw,sw}_flux_{up,dn,net} and the band edges {lw,sw}_band_bounds. Off by
    default, and the broadband path is byte-for-byte unchanged.
  • Added a canonical aerosol species name map: the aerosol getters take canonical names
    (sulfate, sea_salt1, black_carbon_rh, ...), and hosts map their own short names
    (so4, ss1, ...) to these.
  • Added deep_atmosphere_inverse_scaling (an RRTMGPSolver kwarg/getter): a (nlev, ncol)
    factor applied to the fluxes for deep-atmosphere geometry, where the host passes the
    multiplicative inverse of its metric scaling (the low-level metric_scaling argument is
    unchanged).
  • RRTMGPSolver and its optics/source workspaces are now Adapt-able via custom overloads
    that preserve the packed-buffer view topology across device transfers, so checkpoint restores
    stay zero-allocation.
  • Fixed VolumeMixingRatioGlobalMean, which threw an UndefVarError on every call.
  • New documentation: "The functional core" and "The getter contract" pages.

Migration

RRTMGPGridParams now takes the physical domain_nlay and adds the isothermal boundary layer
itself, so host adapters (ClimaAtmos/ClimaCoupler) no longer compute the total layer count:

- nlay = domain_nlay + Int(add_isothermal_boundary_layer)
- gp = RRTMGPGridParams(FT; context, nlay, ncol, isothermal_boundary_layer)
+ gp = RRTMGPGridParams(FT; context, domain_nlay, ncol, isothermal_boundary_layer)
+ nlay = gp.nlay        # total, if you still need it (e.g. for state allocation)

Results are read through the getters after the solve: update_fluxes!(solver, seed) returns
nothing, so use net_flux(solver) (a domain-masked view) or the raw solver.net_flux_buffer.

Atmosphere - Radiative Transfer - Julia
Published by tapios about 2 months ago

RRTMGP.jl - v0.21.9

RRTMGP v0.21.9

Diff since v0.21.8

Merged pull requests:

  • add cloud cover (#599) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 3 months ago

RRTMGP.jl - v0.21.8

RRTMGP v0.21.8

Diff since v0.21.7

Merged pull requests:

  • update ClimaCoupler env for downstream test (#596) (@juliasloan25)
  • add downgrade test (#597) (@juliasloan25)
  • Allow CUDA.jl v6 (#598) (@giordano)

Closed issues:

  • Generalize tolerances (#56)
  • Add per-grid-point capability (#178)
  • Improve memory management (#179)
  • Remove magic indexes (#184)
  • Make all returned arguments the first one (#192)
  • Add documentation for data files (#228)
  • Flame graphs times out on builkite (#519)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 4 months ago

RRTMGP.jl - v0.21.7

RRTMGP v0.21.7

Diff since v0.21.6

Merged pull requests:

  • Move CI to new file system (#586) (@nefrathenrici)
  • feat: add CLA workflow caller (#589) (@kalphonse-rgb)
  • Update cla.yml (#590) (@kalphonse-rgb)
  • clarify naming in readme (#592) (@szy21)
  • rename weighted_irradiance to toa_flux (#593) (@szy21)
  • chore: changes the CLA action trigger to pull_request_target (#594) (@cmbengue)
  • always calculate optical depth (#595) (@szy21)

Closed issues:

  • Enable CLA Workflow (#588)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 7 months ago

RRTMGP.jl - v0.21.6

RRTMGP v0.21.6

Diff since v0.21.5

Merged pull requests:

  • Update to ClimaParams v1 (#584) (@nefrathenrici)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] 12 months ago

RRTMGP.jl - v0.21.5

RRTMGP v0.21.5

Diff since v0.21.4

Merged pull requests:

  • Synchronised parameter names with ClimaParams main (#583) (@ray-chew)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 1 year ago

RRTMGP.jl - v0.21.4

RRTMGP v0.21.4

Diff since v0.21.3

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 1 year ago

RRTMGP.jl - v0.21.3

RRTMGP v0.21.3

Diff since v0.21.2

Merged pull requests:

  • Update Github actions + buildkite pipelines (#579) (@akshaysridhar)
  • Fix lookup_tables (#581) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.21.2

RRTMGP v0.21.2

Diff since v0.21.1

Merged pull requests:

  • Add API to RRTMGP (#575) (@charleskawczynski)
  • Add nsys profiler to GPU benchmarks (#576) (@sriharshakandala)
  • Updates fluxes to apply scaled metrics in deep-atmosphere configurations (#577) (@akshaysridhar)
  • Update patch version (#580) (@akshaysridhar)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.21.1

RRTMGP v0.21.1

Diff since v0.21.0

Merged pull requests:

  • bump patch version (#571) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.21.0

RRTMGP v0.21.0

Diff since v0.20.1

Breaking changes

  • Users now need to add aod_sw_ext and aod_sw_sca to AerosolState.

Merged pull requests:

  • Add aerosol optical depth to AerosolState (#567) (@charleskawczynski)
  • add download badge (#569) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.20.1

RRTMGP v0.20.1

Diff since v0.20.0

Merged pull requests:

  • Clip effective radius between the values from the lookup table (#568) (@trontrytel)

Closed issues:

  • Change aerosol SW lookup table path (#560)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.20.0

RRTMGP v0.20.0

Diff since v0.19.2

Breaking changes

  • Users now need to specify dust and sea salt aerosols for five different size bins.

Merged pull requests:

  • add different sizes for dust and sea salt (#564) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.19.2

RRTMGP v0.19.2

Diff since v0.19.1

Merged pull requests:

  • Rename tests. (#556) (@sriharshakandala)
  • Fix typos/rendering (#557) (@navidcy)
  • add coupler AMIP downstream test; add Julia 1.11 to downstream tests (#558) (@juliasloan25)
  • Update ArtifactPaths.md (#559) (@jty53)
  • update cloud optics (#562) (@szy21)
  • remove pade approximation (#563) (@szy21)
  • bump patch version (#565) (@szy21)

Closed issues:

  • Add downstream tests (#543)
  • Support reproducible restarts (#544)
  • Update cloud optics lookup table (#561)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 1 year ago

RRTMGP.jl - v0.19.1

RRTMGP v0.19.1

Diff since v0.19.0

Merged pull requests:

  • Add Clima (A100) pipeline (#531) (@sriharshakandala)
  • Change data layout for fluxes. (#532) (@sriharshakandala)
  • Change data layout for optical properties. (#533) (@sriharshakandala)
  • Change data layout for sources. (#534) (@sriharshakandala)
  • Change data layouts for pressure, temperature, col_dry and relative humidity (#535) (@sriharshakandala)
  • Change data layout for Vmr (#536) (@sriharshakandala)
  • Fix typo in compute_relative_humidity_kernel! (#537) (@sriharshakandala)
  • Refactor Fluxes (#538) (@sriharshakandala)
  • Simplify type parameters for AngularDiscretizations and BCs. (#540) (@sriharshakandala)
  • Remove Infiltrator from test suite. (#541) (@sriharshakandala)
  • Add reproducibility test for non-trivial cloud fractions (#542) (@sriharshakandala)
  • Revert all changes after v0.19.0. (#545) (@sriharshakandala)
  • Add downstream tests for ClimaAtmos.jl (#546) (@sriharshakandala)
  • Update shortwave aerosol lookup tables. (#548) (@sriharshakandala)
  • Fix flux_dn_dir not updated in all sky two stream (#550) (@Sbozzolo)
  • Fix typo in compute_relative_humidity_kernel! (#552) (@sriharshakandala)
  • Update modules for pipelines (#554) (@sriharshakandala)
  • bump patch version (#555) (@szy21)

Closed issues:

  • Pass a random seed number in the function that generates random numbers (#316)
  • Infiltrator should not be left in the code (#489)
  • Update aerosol SW lookup table (#539)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 2 years ago

RRTMGP.jl - v0.19.0

RRTMGP v0.19.0

Diff since v0.18.0

Merged pull requests:

  • Compute aero_mask internally (#525) (@sriharshakandala)
  • Support 1D interpolation on non-uniform grid (#527) (@sriharshakandala)
  • Compute and store aero_mask. (#528) (@sriharshakandala)
  • bump minor release (#529) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 2 years ago

RRTMGP.jl - v0.18.0

RRTMGP v0.18.0

Diff since v0.17.0

Merged pull requests:

  • Remove ClimaParams dependency (#513) (@nefrathenrici)
  • Move Artifacts (#520) (@sriharshakandala)
  • Rename files not containing modules to use snake_case (#521) (@sriharshakandala)
  • Add clear-sky and all-sky with aerosols GPU benchmarks (#522) (@sriharshakandala)
  • Add support for multiple aerosol types in a layer (#523) (@sriharshakandala)
  • bump minor release (#524) (@szy21)

Closed issues:

  • make sure all SW fluxes are zero when zenith_angle > pi/2 (#446)
  • Use FastGaussQuadrature instead of GaussQuadrature (#447)
  • Update LookUp tables and reference datasets (#481)
  • Filenames do not follow standard convention (#486)
  • ClimaParams is at the same time dependency and weak dependency of RRTMGP (#512)
  • Allow different aerosol types (#516)
  • Artifacts.toml seems outdated and input data is not documented (#517)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 years ago

RRTMGP.jl - v0.17.0

RRTMGP v0.17.0

Diff since v0.16.0

Merged pull requests:

  • Add support for aerosol optics. (#510) (@sriharshakandala)
  • Release 0.17.0 (#511) (@nefrathenrici)

Closed issues:

  • Add aerosol optics (#460)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 years ago

RRTMGP.jl - v0.16.0

RRTMGP v0.16.0

Diff since v0.15.1

Merged pull requests:

  • Fix noscatter shortwave solve (#504) (@nefrathenrici)
  • Support OneScalar cloud optics. (#505) (@sriharshakandala)
  • Rename rte_lw_noscat! (#506) (@sriharshakandala)
  • Release 0.16.0 (#507) (@nefrathenrici)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 years ago

RRTMGP.jl - v0.15.1

RRTMGP v0.15.1

Diff since v0.15.0

Merged pull requests:

  • Force optical thickness to be non-negative (#502) (@sriharshakandala)
  • Patch release v0.15.1 (#503) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 years ago

RRTMGP.jl - v0.15.0

RRTMGP v0.15.0

Diff since v0.14.0

Merged pull requests:

  • Split Solver (#492) (@sriharshakandala)
  • Simplify arguments for solve_lw! and solve_sw! (#493) (@sriharshakandala)
  • Remove unused dependencies (#494) (@sriharshakandala)
  • Update Artifacts to use rrtmgp-data-v1.8.1 (#495) (@sriharshakandala)
  • Move AngularDiscretization to NoScatLWRTE (#496) (@sriharshakandala)
  • Add non-scattering longwave test to clear-sky solver (#497) (@sriharshakandala)
  • Update longwave secants and weights (#498) (@sriharshakandala)
  • Simplify source calculations for NoScatLWRTE solver. (#499) (@sriharshakandala)
  • Minor release 0.15.0 (#501) (@nefrathenrici)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 2 years ago

RRTMGP.jl - v0.14.0

RRTMGP v0.14.0

Diff since v0.13.4

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.13.4

RRTMGP v0.13.4

Diff since v0.13.3

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.13.3

RRTMGP v0.13.3

Diff since v0.13.2

Merged pull requests:

  • Make cuda an extension (#485) (@charleskawczynski)
  • Add ClimaComms backward compatibility (#487) (@charleskawczynski)

Closed issues:

  • Move CUDA to Julia extension (#479)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.13.2

RRTMGP v0.13.2

Diff since v0.13.1

Merged pull requests:

  • Update climacommon to 2024_03_18 (#475) (@Sbozzolo)
  • Update climacommon to 2024_04_05 (#476) (@Sbozzolo)
  • handle FT of 0-dim Array (#484) (@juliasloan25)

Closed issues:

  • Array() now returns an Array for 0-dimensional input (#482)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.13.1

RRTMGP v0.13.1

Diff since v0.13.0

Merged pull requests:

  • Replace exponential function in gray source calculations (#467) (@sriharshakandala)
  • Some optimizations to gray LW simulation (#468) (@sriharshakandala)
  • Update argument types for compute_col_gas! (#470) (@sriharshakandala)
  • Add getview for GrayAtmosphericState (#471) (@sriharshakandala)
  • Update build_cloud_mask! (#472) (@sriharshakandala)
  • New patch version (#473) (@nefrathenrici)
  • Zero out SW Fluxes when zenith angle is > 90 deg - 2 * eps (#474) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.13.0

RRTMGP v0.13.0

Diff since v0.12.0

Merged pull requests:

  • Remove inferable fields from AtmosphericStates (#453) (@sriharshakandala)
  • Add CloudState (#454) (@sriharshakandala)
  • Restructure data layout in AtmosphericStates (#455) (@sriharshakandala)
  • Update to ClimaParams v0.10 (#456) (@nefrathenrici)
  • Add all-sky DYAMOND GPU benchmark (#459) (@sriharshakandala)
  • Move to new-central (#461) (@sriharshakandala)
  • Update Adapt compat (#462) (@charleskawczynski)
  • Remove old and unused environments (#463) (@charleskawczynski)
  • Release v0.13 (#466) (@nefrathenrici)

Closed issues:

  • Set up benchmark pipeline for evaluating RRTMGP.jl performance (#423)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.12.0

RRTMGP v0.12.0

Diff since v0.11.0

Merged pull requests:

  • Swap dimensions for some lookup data (#432) (@sriharshakandala)
  • Restructure minor optics computation (#433) (@sriharshakandala)
  • Update OneScalar and TwoStream structs (#434) (@sriharshakandala)
  • Fix net_flux calculation for shortwave solver. (#435) (@sriharshakandala)
  • Restructure Source structs (#436) (@sriharshakandala)
  • Simplify type parameters for AtmosphericState (#437) (@sriharshakandala)
  • Always inline and remove use of StepRange (#438) (@charleskawczynski)
  • Restructure LookUpCld to reduce metadata size (#442) (@sriharshakandala)
  • Ease register pressure in GasOptics.jl (#443) (@sriharshakandala)
  • Split shortwave optics function (#445) (@sriharshakandala)
  • Add lower bound for cumulative optical thickness (#448) (@sriharshakandala)
  • Restructure LookUp tables (#449) (@sriharshakandala)
  • Update dependencies (#450) (@sriharshakandala)
  • Update to ClimaParameters v0.9 (#452) (@nefrathenrici)

Closed issues:

  • RRTMGPI callbacks fail on P100 (#400)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.11.0

RRTMGP v0.11.0

Diff since v0.10.0

Merged pull requests:

  • docs: don't append parent environment (#402) (@simonbyrne)
  • Update Julia, CUDA versions in Buildkite pipeline (#405) (@sriharshakandala)
  • Simplify 2-stream increment function (#407) (@sriharshakandala)
  • Split up LookUp table and Pade cloud optics tables. (#408) (@sriharshakandala)
  • Split RTE solver code based on optics type (#409) (@sriharshakandala)
  • Refactor build_cloud_mask! (#411) (@sriharshakandala)
  • Restructure cloud optics computations (#412) (@sriharshakandala)
  • Restructure 2-stream shortwave solver (#413) (@sriharshakandala)
  • update shortwave RTE docs (#414) (@szy21)
  • Store cos_zenith instead of zenith (#415) (@sriharshakandala)
  • Swap vmr dimensions (#416) (@sriharshakandala)
  • Simplify optics. (#417) (@sriharshakandala)
  • Store ln(p_ref) instead of p_ref in lookup tables (#418) (@sriharshakandala)
  • Replace fld with unsafe_trunc (#419) (@sriharshakandala)
  • Fix single-precision relative and absolute errors (#421) (@sriharshakandala)
  • Add rrtmgp-lookup-data artifact (#422) (@simonbyrne)
  • Add RRTMGPParameters constructor package extension (#425) (@nefrathenrici)
  • Update examples/Manifest.toml (#426) (@nefrathenrici)
  • Simplify optics parameter types (#427) (@sriharshakandala)
  • Simplify parameter types for RTE shortwave solver (#428) (@sriharshakandala)
  • Split LW & SW gas optics functions (#429) (@sriharshakandala)
  • Restructure longwave RTE solver (#430) (@sriharshakandala)
  • New minor release (#431) (@nefrathenrici)

Closed issues:

  • Add single precision support for RRTMGP (#337)
  • RRTMGPReferenceData artifact (#401)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 2 years ago

RRTMGP.jl - v0.10.0

RRTMGP v0.10.0

Diff since v0.9.3

Merged pull requests:

  • Reduce memory footprint (#397) (@sriharshakandala)
  • Tag v0.10.0 (#399) (@sriharshakandala)

Closed issues:

  • Reduce memory footprint (#398)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 3 years ago

RRTMGP.jl - v0.9.3

RRTMGP v0.9.3

Diff since v0.9.2

Merged pull requests:

  • Add compat for NCDatasets. (#393) (@sriharshakandala)
  • Change syntax to get NC data (#395) (@charleskawczynski)
  • Migrating from Bors to GitHub Merge queue + Buildkite (#396) (@sriharshakandala)

Closed issues:

  • Update NCDatasets compats in environments (#394)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 3 years ago

RRTMGP.jl - v0.9.2

RRTMGP v0.9.2

Diff since v0.9.1

Merged pull requests:

  • Add threaded benchmarks (#378) (@charleskawczynski)
  • Add gpu benchmark (#380) (@charleskawczynski)
  • Do benchmark more carefully (#381) (@charleskawczynski)
  • Apply fixes for Float32 (#383) (@charleskawczynski)
  • Update all_sky tests (#384) (@sriharshakandala)
  • remove compute_optical_props_CUDA!. (#385) (@sriharshakandala)
  • Add back stand-alone clear-sky lw & sw tests (#386) (@sriharshakandala)
  • Add single precision support for RRTMGP (#387) (@sriharshakandala)
  • Update CUDA compat and dependencies. (#392) (@charleskawczynski)

Closed issues:

  • compute_optical_props_CUDA! is untested. (#290)
  • test/rfmip_clear_sky_sw.jl is not being exercised. (#361)
  • Feedback on Detected COMMAND_INJECTION (#390)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 3 years ago

RRTMGP.jl - v0.9.1

RRTMGP v0.9.1

Diff since v0.9.0

Closed issues:

  • Cannot infer splatted args (#365)
  • Fix timing of tests (#369)

Merged pull requests:

  • Update dependencies, use ClimaComms.@threaded (#366) (@charleskawczynski)
  • Add flame graphs (#367) (@charleskawczynski)
  • Do less splatting (#368) (@charleskawczynski)
  • Prep timing (#370) (@charleskawczynski)
  • Add benchmarks (#371) (@charleskawczynski)
  • Precompute expensive terms (#372) (@charleskawczynski)
  • Avoid slowpath in pow (#373) (@charleskawczynski)
  • Remove splatting (#374) (@charleskawczynski)
  • Lower allocation limit (#375) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 3 years ago

RRTMGP.jl - v0.9.0

RRTMGP v0.9.0

Diff since v0.8.3

Merged pull requests:

  • Upgrade to julia 1.8 (#359) (@charleskawczynski)
  • Remove unnecessary type parameters (#360) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 3 years ago

RRTMGP.jl - v0.8.3

RRTMGP v0.8.3

Diff since v0.8.2

Merged pull requests:

  • Update aqua tests (#356) (@charleskawczynski)
  • change input to degrees (#357) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 3 years ago

RRTMGP.jl - v0.8.2

RRTMGP v0.8.2

Diff since v0.8.1

Closed issues:

  • Update to CUDA 4 (#353)

Merged pull requests:

  • Update to CUDA 4 (#354) (@sriharshakandala)
  • Bump patch version for new release (#355) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 3 years ago

RRTMGP.jl - v0.8.1

RRTMGP v0.8.1

Diff since v0.8.0

Merged pull requests:

  • Remove redundant op in compute_col_gas_kernel! (#350) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 3 years ago

RRTMGP.jl - v0.8.0

RRTMGP v0.8.0

Diff since v0.7.0

Merged pull requests:

  • Fix typo in compute_col_dry_kernel! (#347) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 3 years ago

RRTMGP.jl - v0.7.0

RRTMGP v0.7.0

Diff since v0.6.2

Closed issues:

  • Performance issues (#55)
  • Add plots in docs (#112)
  • Add documentation (#174)
  • Make docs strict (#262)
  • Albedo Specification (#284)
  • Improve documentation (#325)
  • Add docs: overview and RTE equations (#328)
  • Add equations for gray radiation (#329)
  • Add / Clean up equations for gas optics (#331)
  • Add / Clean up equations for cloud optics (#332)
  • Add documentation for cloud overlapping assumption (#333)
  • Add examples/tutorials (#334)
  • Enable single threaded launch option (#335)
  • Add different options for gray radiation LW optical thickness (#339)
  • Add / Clean up API (#342)

Merged pull requests:

  • add gray sw optical depth (#323) (@szy21)
  • Make docs strict (#326) (@szy21)
  • Add docs: overview and RTE equations (#327) (@szy21)
  • Add equations for gray radiation (#330) (@szy21)
  • Adds gas optics to docs (#336) (@szy21)
  • Enable user-defined gray optical thickness calculations (#338) (@sriharshakandala)
  • Add documentation for cloud optics (#340) (@szy21)
  • Add documentation for examples (#341) (@szy21)
  • Clean up api in docs (#343) (@szy21)
  • fix docs for gray atmosphere optics (#344) (@szy21)
  • Update README.md (#345) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 3 years ago

RRTMGP.jl - v0.6.2

RRTMGP v0.6.2

Diff since v0.6.1

Closed issues:

  • Unused type parameter (#319)

Merged pull requests:

  • Add aqua tests and update compats (#320) (@charleskawczynski)
  • Bump patch version (#322) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 4 years ago

RRTMGP.jl - v0.6.1

RRTMGP v0.6.1

Diff since v0.6.0

Merged pull requests:

  • Address edge cases in cloud sampling (#317) (@szy21)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] almost 4 years ago

RRTMGP.jl - v0.6.0

RRTMGP v0.6.0

Diff since v0.5.0

Closed issues:

  • Implement McICA to handle partial cloud fraction (#296)
  • Change the random number generation in maximum overlap assumption (#312)

Merged pull requests:

  • Use RRTMG version of maximum-random overlap algorithm. (#313) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 4 years ago

RRTMGP.jl - v0.5.0

RRTMGP v0.5.0

Diff since v0.4.0

Closed issues:

  • Refine/enlarge cloud_mask to be g-point and long/shortwave specific (#297)
  • Add user prescribable cloud fraction input (#299)
  • Build cloud mask for a given cloud fraction (#301)
  • Update Artifacts to add reference data for cloud fraction tests (#305)
  • Cleanup outdated code (#309)

Merged pull requests:

  • Rename master -> main (#295) (@charleskawczynski)
  • Refine/enlarge cloud_mask to be g-point and long/shortwave specific (#298) (@sriharshakandala)
  • Add cloud fraction to AtmosphericState (#300) (@sriharshakandala)
  • Build McICA-sampled cloud mask from cloud fraction data (#302) (@sriharshakandala)
  • Enable parallel initialization of CPU and GPU environments in Buildkite (#304) (@sriharshakandala)
  • Update Artifacts to add reference data for cloud fraction tests (#306) (@sriharshakandala)
  • Sk/add cloud frac arg to test (#307) (@sriharshakandala)
  • Remove outdated code (#308) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 4 years ago

RRTMGP.jl - v0.4.0

RRTMGP v0.4.0

Diff since v0.3.2

Closed issues:

  • Artifact handling is brittle (#288)

Merged pull requests:

  • Remove unnecessary deps from pkg (#286) (@charleskawczynski)
  • Develop RRTMGP in examples and gpu envs (#289) (@charleskawczynski)
  • Remove NCDatasets from package Project toml (#292) (@charleskawczynski)
  • Unify formatter with other repos (#293) (@charleskawczynski)
  • Disable codecov annotations (#294) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] about 4 years ago

RRTMGP.jl - v0.3.2

RRTMGP v0.3.2

Diff since v0.3.1

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 4 years ago

RRTMGP.jl - v0.3.1

RRTMGP v0.3.1

Diff since v0.3.0

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 4 years ago

RRTMGP.jl - v0.3.0

RRTMGP v0.3.0

Diff since v0.2.0

Closed issues:

  • Build LES Longwave driver (#256)
  • TagBot trigger issue (#276)

Merged pull requests:

  • Update compat entries for Adapt, CUDA, GaussQuadrature, and UnPack. (#275) (@sriharshakandala)
  • Fix logo link (#277) (@charleskawczynski)
  • Update to Julia 1.7.2. (#278) (@sriharshakandala)
  • Replace UnPack with native Julia destructuring syntax (#279) (@sriharshakandala)
  • Eliminate GPU to CPU copy for some GPU arrays in RTE (#280) (@sriharshakandala)
  • merge gpu kernels (#281) (@sriharshakandala)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 4 years ago

RRTMGP.jl - RRTMGP.jl v0.2.0

  • This release includes a major refactoring of RRTMGP.jl to use GPU acceleration on CUDA devices and native Julia multithreading on all other devices.
  • Clear-sky, all-sky and gray radiation problems are supported.

Atmosphere - Radiative Transfer - Julia
Published by sriharshakandala almost 5 years ago

RRTMGP.jl - v0.1.0

RRTMGP v0.1.0

First version!

Closed issues:

  • Change repo name (#18)
  • Translation checklist (#30)
  • Add calculation for zenith angle (#113)
  • Add layer to optical properties (#175)
  • Remove OffsetArrays (#183)
  • Add data structures for RTE (#191)

Merged pull requests:

  • Add RTE.jl (#1) (@charleskawczynski)
  • Add RRTMG (#3) (@charleskawczynski)
  • Config (#5) (@charleskawczynski)
  • Azure (#6) (@charleskawczynski)
  • Azure (#7) (@charleskawczynski)
  • Fix readme (#8) (@charleskawczynski)
  • Config (#9) (@charleskawczynski)
  • Add data and netcdf files (#10) (@charleskawczynski)
  • Add JRRTMGP to docs env (#11) (@charleskawczynski)
  • Add RTE doc (#12) (@charleskawczynski)
  • Remove readme from docs (#13) (@charleskawczynski)
  • Fix Azure links in README (#14) (@charleskawczynski)
  • Add Fortran files, with .jl ext (#15) (@charleskawczynski)
  • Translate mo_gas_optics_kernels (#16) (@charleskawczynski)
  • Translate mo_rte_solver_kernels (#17) (@charleskawczynski)
  • Translate 3 fortran files (#19) (@skandalaCLIMA)
  • Translate mo_util_array.f90 (#20) (@skandalaCLIMA)
  • [WIP] Translate mo_optical_props.jl (#21) (@charleskawczynski)
  • Add modules/submodules (#22) (@charleskawczynski)
  • Combine modules (#23) (@charleskawczynski)
  • Add mo_fluxes (#24) (@charleskawczynski)
  • Add mo_source_functions (#25) (@charleskawczynski)
  • Add Fortran Examples (#26) (@charleskawczynski)
  • Update fortran intrinsics (#27) (@charleskawczynski)
  • Mo optical props (#28) (@charleskawczynski)
  • Mo rte sw.f90 (#29) (@skandalaCLIMA)
  • Fix deallocate in mo_optical_props (#31) (@charleskawczynski)
  • Add back dealloc (#32) (@charleskawczynski)
  • [WIP] Mo gas concentrations (#33) (@charleskawczynski)
  • Mo fluxes (#34) (@charleskawczynski)
  • Translate mo_rrtmgp_constants (#35) (@charleskawczynski)
  • Translate mo_util_string (#36) (@charleskawczynski)
  • Translate mo_gas_optics_rrtmgp (#37) (@charleskawczynski)
  • Mo gas optics kernels (#38) (@charleskawczynski)
  • Mo util string (#39) (@charleskawczynski)
  • Mo rrtmgp constants (#40) (@charleskawczynski)
  • Translate mo_util_reorder (#41) (@charleskawczynski)
  • Mo util reorder (#42) (@charleskawczynski)
  • Translate mo_gas_optics (#43) (@charleskawczynski)
  • Translate rrtmgp_rfmip_sw (#44) (@charleskawczynski)
  • Mo rfmip io (#45) (@skandalaCLIMA)
  • First pass at running the code (#46) (@charleskawczynski)
  • Add mo_test_files_io (#47) (@charleskawczynski)
  • Translated mo_simple_netcdf (#48) (@skandalaCLIMA)
  • Add adding test (#49) (@charleskawczynski)
  • add test datasets via DataDeps.jl (#50) (@simonbyrne)
  • Converted remaining files to .jl (#51) (@charleskawczynski)
  • Test util 09 26 2019 10 30, partially translated mo_test_files_io.jl (#52) (@skandalaCLIMA)
  • Integration (#53) (@charleskawczynski)
  • Integration (#54) (@charleskawczynski)
  • Trying to fix build (#57) (@charleskawczynski)
  • Fix readme (#58) (@charleskawczynski)
  • Add original license (#60) (@charleskawczynski)
  • Fix build (#61) (@charleskawczynski)
  • Clean string util (#62) (@charleskawczynski)
  • Longwave (#66) (@skandalaCLIMA)
  • Use DataDeps in SW driver (#67) (@charleskawczynski)
  • Fix driver sw (#68) (@charleskawczynski)
  • Clean up unused files, remove nc files, rename drivers (#69) (@charleskawczynski)
  • Add Allsky example (#70) (@charleskawczynski)
  • Update reference data (#71) (@charleskawczynski)
  • Adding documentation to RRTMGP modules (#72) (@skandalaCLIMA)
  • Refactor fluxes (#73) (@charleskawczynski)
  • Clean/update docs in mo_fluxes_byband (#74) (@charleskawczynski)
  • Remove data files and unused fortran and python files (#75) (@charleskawczynski)
  • References - pt 1 (#77) (@skandalaCLIMA)
  • Refactor reorder (#78) (@charleskawczynski)
  • Clean up mo_gas_optics.jl (#79) (@charleskawczynski)
  • Cleanup mo_rte_sw (#80) (@charleskawczynski)
  • refactor mo_source_functions (#81) (@charleskawczynski)
  • Refactor mo_rte_lw (#82) (@charleskawczynski)
  • Refactor mo_util_array (#83) (@charleskawczynski)
  • Add longwave test, using different optical props (#85) (@charleskawczynski)
  • Refactor mo_rrtmgp_constants (#86) (@charleskawczynski)
  • Refactor mo_fluxes_broadband_kernels (#88) (@charleskawczynski)
  • Add shortwave test with alternative optical props (#89) (@charleskawczynski)
  • Remove reorder (#91) (@charleskawczynski)
  • Refactor mo_rfmip_io (#93) (@charleskawczynski)
  • Remove unused functions/convert to intrinsics (#94) (@charleskawczynski)
  • Add test that uses Pade scheme (#95) (@charleskawczynski)
  • Clean up cloud optics (#96) (@charleskawczynski)
  • Move cloud sampling to test (#97) (@charleskawczynski)
  • Move nstream kernels to test (#98) (@charleskawczynski)
  • Move more n-stream to test folder (#99) (@charleskawczynski)
  • Delete mo_garand_atmos_io - since it's unused (#100) (@charleskawczynski)
  • Clean up mo_gas_concentrations (#101) (@charleskawczynski)
  • Add Profile, type restriction, and @inbounds (#102) (@charleskawczynski)
  • Add Benchmark suite (#103) (@charleskawczynski)
  • Convert if->error to assertions (#104) (@charleskawczynski)
  • Improve performance (#105) (@charleskawczynski)
  • Organize folders (#107) (@charleskawczynski)
  • Move subset functions to PartialImplementations (#108) (@charleskawczynski)
  • Trim unused functions in FortranIntrinsics (#109) (@charleskawczynski)
  • Change varname to not match func name (#110) (@charleskawczynski)
  • Move remaining fortran code to separate folder (#111) (@charleskawczynski)
  • Use @elapsed for timing (#114) (@charleskawczynski)
  • Adds allsky and clearsky lw tests back to runtests (#115) (@charleskawczynski)
  • Significant speed up, avoid copy array (#116) (@charleskawczynski)
  • Simplify strings (#117) (@charleskawczynski)
  • Make ty_optical_props_base immutable (#118) (@charleskawczynski)
  • Remove partial init from single and 2-stream optical props (#119) (@charleskawczynski)
  • Rename JRRTMGP -> RRTMGP.jl (#120) (@charleskawczynski)
  • Fix AppVeyor badge (#121) (@charleskawczynski)
  • Fix JRRTMGP -> RRTMGP in running original RRTMGP (#122) (@charleskawczynski)
  • Remove partial initialization (#123) (@charleskawczynski)
  • Simplify logic (#124) (@charleskawczynski)
  • Make get_vmr non-allocating (#126) (@charleskawczynski)
  • Remove unused funcs, simplify logic (#127) (@charleskawczynski)
  • Replace loop transpose with transpose intrinsic (#128) (@charleskawczynski)
  • Remove unnecessary colons (#129) (@charleskawczynski)
  • Update docs (#130) (@charleskawczynski)
  • Add structure to cloud_optics (#131) (@charleskawczynski)
  • Make ty_fluxes_broadband immutable (#132) (@charleskawczynski)
  • Decompose ty_gas_optics_rrtmgp (#133) (@charleskawczynski)
  • Simplify interfaces (#134) (@charleskawczynski)
  • Move towards immutable ty_gas_optics_rrtmgp (#136) (@charleskawczynski)
  • Remove some indexes passed into funcs (#137) (@charleskawczynski)
  • Remove ty_gas_optics_rrtmgp mutability (#138) (@charleskawczynski)
  • Add docs and type restrictions (#139) (@charleskawczynski)
  • Update docs (#140) (@charleskawczynski)
  • Fix doc deployment (#141) (@charleskawczynski)
  • Move kernels outside of modules (#142) (@charleskawczynski)
  • Rename files to TitleCase (#143) (@charleskawczynski)
  • Move compress_targz outside of src (#144) (@charleskawczynski)
  • Rename structs and modules (#145) (@charleskawczynski)
  • Rename AtmosVars to GasOpticsVars (#147) (@charleskawczynski)
  • Add InterpolationCoefficients struct (#149) (@charleskawczynski)
  • Remove stale docs, add type restrictions (#150) (@charleskawczynski)
  • Move data loading to its own folder (#151) (@charleskawczynski)
  • Kaizen: Convert to unicode, remove indexes, add inbounds, use broadcast (#152) (@charleskawczynski)
  • Refactor gas concs (#153) (@charleskawczynski)
  • Refactor gas concs (#154) (@charleskawczynski)
  • Refactor GasOptics (#155) (@charleskawczynski)
  • Remove some passed indexes (#156) (@charleskawczynski)
  • Remove temp array, simplify slicing (#157) (@charleskawczynski)
  • Refactor GasOptics (#158) (@charleskawczynski)
  • Add Gases, simplify management of gases/names (#160) (@charleskawczynski)
  • Update docs, remove unused vars (#161) (@charleskawczynski)
  • Add AtmosphericStates (#162) (@charleskawczynski)
  • Move error checking to constructor (#163) (@charleskawczynski)
  • Add viz env and heating rate plots (#164) (@charleskawczynski)
  • Move some col_vars to AtmosState (#165) (@charleskawczynski)
  • Adds zenith angle module (#166) (@charleskawczynski)
  • Move t_sfc into AtmosState, and toa_src out of GasOptics (#167) (@charleskawczynski)
  • Add RadiativeBCs, refactor/clean RTE (#168) (@charleskawczynski)
  • Add AngularDiscretizations (#169) (@charleskawczynski)
  • Split ReferenceState in k-dist, rename k-dists (#170) (@charleskawczynski)
  • Rename Internal/External GasOptics (#171) (@charleskawczynski)
  • Adds per-grid-point computations of spectral optical depth (#172) (@charleskawczynski)
  • Add Bors (#173) (@charleskawczynski)
  • Refactor CloudOptics and OpticalProps_kernels (#176) (@charleskawczynski)
  • Add CloudOpticalProps type (#177) (@charleskawczynski)
  • Clean up (#180) (@charleskawczynski)
  • Add per grid point structures, and convert methods (#181) (@charleskawczynski)
  • Simplify rrtmgp interfaces (#182) (@charleskawczynski)
  • Remove OffsetArrays (#185) (@charleskawczynski)
  • Add type restrictions, fix docs (#186) (@charleskawczynski)
  • Move tropo and tropo_lims to AtmosphericState (#187) (@charleskawczynski)
  • Add MeshOrientations (#188) (@charleskawczynski)
  • Add per-grid-point capability (#189) (@charleskawczynski)
  • General clean up (#190) (@charleskawczynski)
  • Add and update docs (#193) (@charleskawczynski)
  • Fix/clean some docs (#194) (@charleskawczynski)
  • Add docs, fix some doc complaints (#195) (@charleskawczynski)
  • Update / fix docs (#196) (@charleskawczynski)
  • Update/fix docs (#197) (@charleskawczynski)
  • Remove unused functions (#198) (@charleskawczynski)
  • Remove kernels folder, clean up docs (#199) (@charleskawczynski)
  • Refactor MeshOrientation (#200) (@charleskawczynski)
  • Combine top_at_1 logic (#201) (@charleskawczynski)
  • Reshape README table (#202) (@charleskawczynski)
  • Refactor RTE solver kernels (#203) (@charleskawczynski)
  • Simplify/dispatch BCs, unpack some fields (#204) (@charleskawczynski)
  • Add @inbounds, move var defs (#205) (@charleskawczynski)
  • Update docs and README (#206) (@charleskawczynski)
  • Add Julia 1.3, use 1.3 for docs (#207) (@charleskawczynski)
  • Add RTE structure (#208) (@charleskawczynski)
  • Remove point-wise wrapper functions (#210) (@charleskawczynski)
  • Update docs, add links to README (#211) (@charleskawczynski)
  • Make more point-wise ops (#212) (@charleskawczynski)

Atmosphere - Radiative Transfer - Julia
Published by github-actions[bot] over 6 years ago