Skip to content

SolarModel API

SolarModel provides Planck helpers and file-backed solar/stellar transmission loading used by the shortwave and inelastic workflows.

vSmartMOM.SolarModel.planck_spectrum_wn Function
julia
planck_spectrum_wn(T::Real, ν_grid::Vector)

Produce the black-body planck spectrum (mW/m²-sr-cm⁻¹), given the temperature (K) and calculation grid (ν in cm⁻¹)

source
julia
planck_spectrum_wn(T::Real; stride_length::Integer = 100)

Produce the black-body planck spectrum (mW/m²-sr-cm⁻¹), given the temperature (K). Use a unit calculation grid and check for convergence every stride_length cm⁻¹ until the spectrum dies off.

source
vSmartMOM.SolarModel.planck_spectrum_wl Function
julia
planck_spectrum_wl(T::Real, λ_grid::Vector)

Produce the black-body planck spectrum (W/m²-sr-μm), given the temperature (K) and calculation grid (λ in μm)

source
vSmartMOM.SolarModel.solar_transmission_from_file Function
julia
solar_transmission_from_file(file_name::String)

Get the solar transmission from the specified file

source
julia
solar_transmission_from_file(file_name::String, ν_grid::Union{AbstractRange{<:Real}, AbstractArray})

Get the solar transmission from the specified file, and interpolate to wavenumber grid

source
vSmartMOM.SolarModel.default_solar_transmission_path Function
julia
default_solar_transmission_path() -> String

Return the local path to the package default disk-integrated solar transmission table.

Resolution order:

  • ENV["VSMARTMOM_SOLAR_FILE"], when set

  • the registered solar Julia artifact, when installed or installable

  • a checksum-verified scratch-space cache downloaded from the legacy vSmartMOM solar table URL

This helper is package-relocatable and never writes downloaded data into the source tree.

source
vSmartMOM.SolarModel.default_solar_transmission Function
julia
default_solar_transmission(ν_grid::Union{AbstractRange{<:Real}, AbstractArray} = 600.0:0.01:26316.0)

Get the default solar transmission and interpolate to wavenumber grid (entire grid if not specified)

source
vSmartMOM.SolarModel.default_solar_spectrum_at_earth Function
julia
default_solar_spectrum_at_earth(ν_grid::Union{AbstractRange{<:Real}, AbstractArray} = 600.0:0.01:26316.0)

Get the default solar spectrum and interpolate to wavenumber grid (entire grid if not specified)

source