refraction_render.calcs.CurveCalc

class refraction_render.calcs.CurveCalc(R0=6370997.0, **std_atmosphere_args)[source]

Bases: refraction_render.calcs.calculators.Calc

Calculator used for calculating rays on a spherical earth in an atmosphere.

__init__(R0=6370997.0, **std_atmosphere_args)[source]

Iintialize CurveCalc object.

R0: float, optional

Radius of the sphere for this calculation.

**std_atmosphere_args: optional

arguments to std_atmosphere object.

Methods

__init__([R0])

Iintialize CurveCalc object.

solve_ivp(d, h[, dh, alpha])

Solve initial value problem for light rays.

Attributes

R0

Radius of the sphere in this calculator.

atm_model

Atmospheric model used for this calculator.

property R0

Radius of the sphere in this calculator.

property atm_model

Atmospheric model used for this calculator.

solve_ivp(d, h, dh=None, alpha=None, **kwargs)

Solve initial value problem for light rays.

d: float

maximum distance to solve the light rays.

h: array_like (n,)

initial height of rays.

dh: array_like (n,), optional

initial derivatives of the rays.

alpha: array_like (n,), optional

initial angle of the rays.

**kwargs: optional

extra arguments which get passed into Fermat equation solver.