ostk.astrodynamics.flight.system.SatelliteSystemBuilder

class SatelliteSystemBuilder(self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder)

Bases: pybind11_object

A Satellite System Builder, meant to simplify creation of a SatelliteSystem, by allowing you to only specify the parameters you want. There are two ways of doing this:

Chaining together your desired parameters like so:

satellite_system = SatelliteSystemBuilder().with_dry_mass(X).with_area(Y).build()

Using the default SatelliteSystem and changing one parameters like so:

satellite_system = SatelliteSystemBuilder.default().with_dry_mass(X)

Constructor.

Methods

build

Build a new satellite system.

default

Create a satellite system builder with default values.

with_cross_sectional_surface_area

Set the dry mass.

with_drag_coefficient

Set the drag coefficient.

with_dry_mass

Set the dry mass.

with_geometry

Set the geometry.

with_inertia_tensor

Set the inertia tensor.

with_propulsion_system

Set the propulsion system.

build(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
) ostk.astrodynamics.flight.system.SatelliteSystem

Build a new satellite system.

Returns:

A new satellite system.

Return type:

SatelliteSystem

static default() ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Create a satellite system builder with default values.

Returns:

The satellite system builder with default values.

Return type:

SatelliteSystem

with_cross_sectional_surface_area(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
cross_sectional_surface_area: ostk.core.type.Real,
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the dry mass.

Parameters:

cross_sectional_surface_area (float) -- The cross-sectional surface area.

Returns:

The builder.

Return type:

SatelliteSystemBuilder

with_drag_coefficient(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
drag_coefficient: ostk.core.type.Real,
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the drag coefficient.

Parameters:

drag_coefficient (float) -- The drag coefficient.

Returns:

The builder.

Return type:

SatelliteSystemBuilder

with_dry_mass(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
dry_mass: ostk.physics.unit.Mass,
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the dry mass.

Parameters:

dry_mass (Mass) -- The dry mass.

Returns:

The builder.

Return type:

SatelliteSystemBuilder

with_geometry(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
geometry: ostk.mathematics.geometry.d3.object.Composite,
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the geometry.

Parameters:

geometry (Composite) -- The geometry.

Returns:

The builder.

Return type:

SatelliteSystemBuilder

with_inertia_tensor(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
inertia_tensor: numpy.ndarray[numpy.float64[3, 3]],
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the inertia tensor.

Parameters:

inertia_tensor (Matrix3d) -- The inertia tensor.

Returns:

The builder.

Return type:

SatelliteSystemBuilder

with_propulsion_system(
self: ostk.astrodynamics.flight.system.SatelliteSystemBuilder,
propulsion_system: ostk.astrodynamics.flight.system.PropulsionSystem,
) ostk.astrodynamics.flight.system.SatelliteSystemBuilder

Set the propulsion system.

Parameters:

propulsion_system (PropulsionSystem) -- The propulsion system.

Returns:

The builder.

Return type:

SatelliteSystemBuilder