Six s
source module isofit.radiative_transfer.engines.six_s
Classes
-
SixSRT — A model of photon transport including the atmosphere.
source class SixSRT(engine_config: RadiativeTransferEngineConfig, modtran_emulation=False, **kwargs)
Bases : RadiativeTransferEngine
A model of photon transport including the atmosphere.
Methods
-
preSim — Add the 6S executable in the LUT attributes
-
makeSim — Perform 6S simulations
-
readSim — Parses a 6S output simulation file for a given point
-
postSim — Update solar_irr after simulations
-
rebuild_cmd — Build the simulation command file.
-
load_esd — Loads the earth-sun distance file
-
parse_file — Parses a 6S sim file
Add the 6S executable in the LUT attributes
source method SixSRT.makeSim(point: np.array)
Perform 6S simulations
Parameters
-
point : np.array — Point to process
source method SixSRT.readSim(point: np.array)
Parses a 6S output simulation file for a given point
Parameters
-
point : np.array — Point to process
Returns
-
data : dict — Simulated data results. These keys correspond with the expected keys of ISOFIT's LUT files
source method SixSRT.postSim()
Update solar_irr after simulations
Raises
-
FileNotFoundError
source method SixSRT.rebuild_cmd(point, wlinf, wlsup) → str
Build the simulation command file.
Parameters
-
point : np.array — conditions to alter in simulation
-
wlinf : float — shortest wavelength to run simulation for
-
wlsup: : float — longest wavelength to run simulation for
Returns
-
str — execution command
Raises
-
AttributeError
source method SixSRT.load_esd()
Loads the earth-sun distance file
source staticmethod SixSRT.parse_file(file, wl, multipart_transmittance=False, wl_size=0) → dict
Parses a 6S sim file
Parameters
-
file : str — Path to simulation file to parse
-
wl : np.array — Simulation wavelengths
-
multipart_transmittance : bool — Flag to tell program to parse up-down split transmittances
-
wl_size : int, default=0 — Size of the wavelengths dim, will trim data to this size. If zero, does no trimming
Returns
-
data : dict — Simulated data results. These keys correspond with the expected keys of ISOFIT's LUT files
Examples
from isofit.data import env
from isofit.radiative_transfer.engines import SixSRT
SixSRT.parse_file(f'{env.examples}/20151026_SantaMonica/lut/AOT550-0.0000_H2OSTR-0.5000', wl_size=3)
{'sphalb': array([0.3116, 0.3057, 0.2999]),
'rhoatm': array([0.2009, 0.1963, 0.1916]),
'transm_down_dif': array([0.53211358, 0.53993346, 0.54736113]),
'solzen': 55.21,
'coszen': 0.5705702414191993}