artist.field.actuators_ideal ============================ .. py:module:: artist.field.actuators_ideal Classes ------- .. autoapisummary:: artist.field.actuators_ideal.IdealActuators Module Contents --------------- .. py:class:: IdealActuators(non_optimizable_parameters: torch.Tensor, optimizable_parameters: torch.Tensor = torch.tensor([], requires_grad=True), device: torch.device | None = None) Bases: :py:obj:`artist.field.actuators.Actuators` Initialize ideal actuators. Parameters ---------- non_optimizable_parameters : torch.Tensor The four non-optimizable actuator parameters, describing actuator geometry. Tensor of shape [number_of_heliostats, 4, 2]. optimizable_parameters : torch.Tensor The ideal actuators do not have optimizable parameters, this tensor is therefore empty (default is torch.tensor([])). Tensor of shape []. device : torch.device | None The device on which to perform computations or load tensors and models (default is None). If None, ``ARTIST`` will automatically select the most appropriate device (CUDA or CPU) based on availability and OS. .. py:method:: motor_positions_to_angles(motor_positions: torch.Tensor, device: torch.device | None = None) -> torch.Tensor Calculate the joint angles for given motor positions. Parameters ---------- motor_positions : torch.Tensor The motor positions. Tensor of shape [number_of_active_heliostats, 2]. device : torch.device | None The device on which to perform computations or load tensors and models (default is None). If None, ``ARTIST`` will automatically select the most appropriate device (CUDA or CPU) based on availability and OS. Returns ------- torch.Tensor The joint angles corresponding to the motor positions. .. py:method:: angles_to_motor_positions(angles: torch.Tensor, device: torch.device | None = None) -> torch.Tensor Calculate the motor positions for given joint angles. Parameters ---------- angles : torch.Tensor The joint angles. Tensor of shape [number_of_active_heliostats, 2]. device : torch.device | None The device on which to perform computations or load tensors and models (default is None). If None, ``ARTIST`` will automatically select the most appropriate device (CUDA or CPU) based on availability and OS. Returns ------- torch.Tensor The motor steps. Tensor of shape [number_of_active_heliostats, 2].