Skip to content

gateway

cosmica.models.gateway

__all__ module-attribute

__all__ = ['Gateway', 'GatewayOGS']

Gateway dataclass

Gateway(
    *,
    id: T,
    latitude: float,
    longitude: float,
    minimum_elevation: float,
    altitude: float = 0.0,
    n_terminals: int = 1
)

Bases: Node[T]

altitude class-attribute instance-attribute

altitude: float = field(default=0.0, compare=False)

global_id property

global_id: NodeGID

The universally unique identifier of the node.

id instance-attribute

id: T

latitude class-attribute instance-attribute

latitude: float = field(compare=False)

longitude class-attribute instance-attribute

longitude: float = field(compare=False)

minimum_elevation class-attribute instance-attribute

minimum_elevation: float = field(compare=False)

n_terminals class-attribute instance-attribute

n_terminals: int = field(default=1, compare=False)

__post_init__

__post_init__() -> None
Source code in src/cosmica/models/gateway.py
52
53
54
55
56
57
58
59
def __post_init__(self) -> None:
    _validate_gateway_fields(
        latitude=self.latitude,
        longitude=self.longitude,
        minimum_elevation=self.minimum_elevation,
        altitude=self.altitude,
        n_terminals=self.n_terminals,
    )

__str__

__str__() -> str
Source code in src/cosmica/models/node.py
32
33
def __str__(self) -> str:
    return self.global_id

class_name classmethod

class_name() -> str
Source code in src/cosmica/models/gateway.py
61
62
63
64
@classmethod
@override
def class_name(cls) -> str:
    return "GW"

GatewayOGS dataclass

GatewayOGS(
    *,
    id: T,
    latitude: float,
    longitude: float,
    minimum_elevation: float,
    altitude: float = 0.0,
    n_terminals: int = 1,
    aperture_size: float = 1.0,
    rytov_variance: float = 0.5
)

Bases: Node[T]

altitude class-attribute instance-attribute

altitude: float = field(default=0.0, compare=False)

aperture_size class-attribute instance-attribute

aperture_size: float = field(default=1.0, compare=False)

global_id property

global_id: NodeGID

The universally unique identifier of the node.

id instance-attribute

id: T

latitude class-attribute instance-attribute

latitude: float = field(compare=False)

longitude class-attribute instance-attribute

longitude: float = field(compare=False)

minimum_elevation class-attribute instance-attribute

minimum_elevation: float = field(compare=False)

n_terminals class-attribute instance-attribute

n_terminals: int = field(default=1, compare=False)

rytov_variance class-attribute instance-attribute

rytov_variance: float = field(default=0.5, compare=False)

__post_init__

__post_init__() -> None
Source code in src/cosmica/models/gateway.py
78
79
80
81
82
83
84
85
86
87
88
89
def __post_init__(self) -> None:
    _validate_gateway_fields(
        latitude=self.latitude,
        longitude=self.longitude,
        minimum_elevation=self.minimum_elevation,
        altitude=self.altitude,
        n_terminals=self.n_terminals,
    )
    _assert_finite(self.aperture_size, name="aperture_size")
    _assert_finite(self.rytov_variance, name="rytov_variance")
    assert self.aperture_size > 0.0, "aperture_size must be positive."
    assert self.rytov_variance >= 0.0, "rytov_variance must be non-negative."

__str__

__str__() -> str
Source code in src/cosmica/models/node.py
32
33
def __str__(self) -> str:
    return self.global_id

class_name classmethod

class_name() -> str
Source code in src/cosmica/models/gateway.py
91
92
93
94
@classmethod
@override
def class_name(cls) -> str:
    return "GW_OGS"