RadiationBeltConstraint#
- class m4opt.constraints.RadiationBeltConstraint(flux, energy, particle, solar)[source] [edit on github]#
Bases:
ConstraintConstrain the flux of charged particles in the Earth’s radiation belts.
Notes
This constraint evaluates the NASA AE8/AP8 model from IRBEM.
Examples
>>> from astropy.coordinates import EarthLocation, SkyCoord >>> from astropy.time import Time >>> from astropy import units as u >>> from m4opt.constraints import RadiationBeltConstraint >>> time = Time("2017-08-17T00:41:04Z") >>> target = SkyCoord.from_name("NGC 4993") >>> location = EarthLocation.from_geodetic(35 * u.deg, -20 * u.deg, 300 * u.km) >>> constraint = RadiationBeltConstraint( ... flux=20e3 * u.cm**-2 * u.s**-1, energy=1 * u.MeV, ... particle="e", solar="max") >>> constraint(location, target, time) np.True_
Attributes Summary
The particle energy in units compatible with MeV.
The maximum flux in units compatible with cm^-2 s^-1.
The particle species,
"e"for electrons or"p"for protons.The phase in the solar cycle,
"max"for solar maximum or"min"for solar minimum.Methods Summary
__call__(observer_location, target_coord, ...)Evaluate the constraint at a given observer location, target position, and time.
Attributes Documentation
- Parameters:
- energy: Quantity, PhysicalType({'energy', 'torque', 'work'})] = <dataclasses._MISSING_TYPE object>#
The particle energy in units compatible with MeV.
- flux: Annotated[Quantity, PhysicalType('particle flux')] = <dataclasses._MISSING_TYPE object>#
The maximum flux in units compatible with cm^-2 s^-1.
- particle: Literal['e', 'p'] = <dataclasses._MISSING_TYPE object>#
The particle species,
"e"for electrons or"p"for protons.
- solar: Literal['max', 'min'] = <dataclasses._MISSING_TYPE object>#
The phase in the solar cycle,
"max"for solar maximum or"min"for solar minimum.
Methods Documentation
- __call__(observer_location, target_coord, obstime)[source] [edit on github]#
Evaluate the constraint at a given observer location, target position, and time.