piel.models.physical.electrical
===============================

.. py:module:: piel.models.physical.electrical


Submodules
----------

.. toctree::
   :maxdepth: 1

   /autoapi/piel/models/physical/electrical/cables/index
   /autoapi/piel/models/physical/electrical/core/index
   /autoapi/piel/models/physical/electrical/measurement/index
   /autoapi/piel/models/physical/electrical/pcb/index
   /autoapi/piel/models/physical/electrical/transmission_lines/index


Attributes
----------

.. autoapisummary::

   piel.models.physical.electrical.Picosecond5575A104
   piel.models.physical.electrical.tl


Functions
---------

.. autoapisummary::

   piel.models.physical.electrical.construct_current_dc_signal
   piel.models.physical.electrical.construct_voltage_dc_signal
   piel.models.physical.electrical.construct_dc_signal
   piel.models.physical.electrical.DMM6500
   piel.models.physical.electrical.create_power_splitter_1to2
   piel.models.physical.electrical.create_bias_tee
   piel.models.physical.electrical.create_attenuator
   piel.models.physical.electrical.open_85052D
   piel.models.physical.electrical.short_85052D
   piel.models.physical.electrical.load_85052D
   piel.models.physical.electrical.through_85052D
   piel.models.physical.electrical.SMU2450
   piel.models.physical.electrical.create_dc_sweep_configuration
   piel.models.physical.electrical.create_dc_operating_point_configuration
   piel.models.physical.electrical.create_two_port_oscilloscope
   piel.models.physical.electrical.DPO73304
   piel.models.physical.electrical.create_one_port_square_wave_waveform_generator
   piel.models.physical.electrical.AWG70001A
   piel.models.physical.electrical.E8364A
   piel.models.physical.electrical.create_pcb


Package Contents
----------------

.. py:function:: construct_current_dc_signal(name: str, values: piel.types.ArrayTypes) -> piel.types.SignalDC

   Construct a DC signal instance for a current signal.

   :param name: The name of the signal.
   :type name: str
   :param values: The values of the signal.
   :type values: ArrayTypes

   :returns: SignalTraceDC: A DC signal instance for a current signal.


.. py:function:: construct_voltage_dc_signal(name: str, values: piel.types.ArrayTypes) -> piel.types.SignalDC

   Construct a DC signal instance for a voltage signal.

   :param name: The name of the signal.
   :type name: str
   :param values: The values of the signal.
   :type values: ArrayTypes

   :returns: SignalTraceDC: A DC signal instance for a voltage signal.


.. py:function:: construct_dc_signal(voltage_signal_name: str, voltage_signal_values: piel.types.ArrayTypes, current_signal_name: str, current_signal_values: piel.types.ArrayTypes) -> piel.types.SignalDC

   Construct a DC signal with voltage and current signal instances.

   :param voltage_signal_name: The name of the voltage signal.
   :type voltage_signal_name: str
   :param voltage_signal_values: The values of the voltage signal.
   :type voltage_signal_values: ArrayTypes
   :param current_signal_name: The name of the current signal.
   :type current_signal_name: str
   :param current_signal_values: The values of the current signal
   :type current_signal_values: ArrayTypes

   :returns: SignalDC: A DC signal with voltage and current signal instances.


.. py:function:: DMM6500(**kwargs) -> piel.types.experimental.Multimeter

.. py:function:: create_power_splitter_1to2(name: Optional[str] = None)

.. py:function:: create_bias_tee(name: Optional[str] = None, **kwargs)

.. py:function:: create_attenuator(name: Optional[str] = None, **kwargs)

.. py:data:: Picosecond5575A104

.. py:function:: open_85052D()

.. py:function:: short_85052D()

.. py:function:: load_85052D()

.. py:function:: through_85052D()

.. py:function:: SMU2450(name: Optional[str] = None, **kwargs) -> piel.types.experimental.Sourcemeter

.. py:function:: create_dc_sweep_configuration(voltage_range_V: tuple[float, float]) -> piel.types.experimental.SourcemeterConfiguration

.. py:function:: create_dc_operating_point_configuration(voltage_V: float) -> piel.types.experimental.SourcemeterConfiguration

.. py:function:: create_two_port_oscilloscope(name: str = 'two_port_oscilloscope', **kwargs) -> piel.types.experimental.Oscilloscope

.. py:function:: DPO73304(name: str = 'DPO73304', **kwargs) -> piel.types.experimental.Oscilloscope

.. py:function:: create_one_port_square_wave_waveform_generator(peak_to_peak_voltage_V: float, rise_time_s: float, fall_time_s: float, frequency_Hz: float)

.. py:function:: AWG70001A(signal: piel.types.SignalTimeSources, **kwargs) -> piel.types.experimental.WaveformGenerator

.. py:function:: E8364A(**kwargs) -> piel.experimental.types.VNA

.. py:function:: create_pcb(pcb_name: str = None, port_name_list: List[str] = None, connection_tuple_list: List[Tuple[str, str]] = None, port_factory: Optional[Callable[[str], piel.types.PhysicalPort]] = None, **kwargs) -> piel.types.PCB

   Defines a PCB component instantiation.

   :param port_name_list: The list of port names. Defaults to None.
   :type port_name_list: List[str], optional
   :param connection_tuple_list: The list of connections between connection. Defaults to None.
   :type connection_tuple_list: List[Tuple[str, str]], optional
   :param port_factory: The factory function to create the connection.
                        Needs to contain the port definition parameters. Defaults to None.
   :type port_factory: Optional[Callable[[str], PhysicalPort]], optional


.. py:data:: tl

