## Modelica.Electrical.MultiPhase.Sources

Multiphase voltage and current sources

### Information

This package contains time-dependend and controlled multiphase voltage and current sources:

- SignalVoltage: fed by Modelica.Blocks.Sources arbitrary waveforms of voltages are possible
- SineVoltage : phase shift between consecutive voltages by default `= pi/m`
- SignalCurrent: fed by Modelica.Blocks.Sources arbitrary waveforms of currents are possible
- SineCurrent : phase shift between consecutive currents by default `= pi/m`

Main Authors:
  Anton Haumer
  Technical Consulting & Electrical Engineering
  A-3423 St.Andrae-Woerdern
  Austria
  email: a.haumer@haumer.at

Release Notes:
  - v1.00 2004/06/25 Anton Haumer

Copyright:
  Copyright © 1998-2004, Modelica Association and Anton Haumer.
  The Modelica package is free software; it can be redistributed and/or modified under the terms of the Modelica license, see the license conditions and the accompanying disclaimer in the documentation of package Modelica in file "Modelica/package.mo".

Name | Description
--- | ---
SignalVoltage | Multiphase signal voltage source
SineVoltage | Multiphase sine voltage source
SignalCurrent | Multiphase sine current source
SineCurrent | Multiphase sine current source

## Modelica.Electrical.MultiPhase.Sources.SineVoltage

Multiphase sine voltage source

### Information

Contains m sine voltage sources (Modelica.Electrical.Analog.Sources.SineVoltage) with a default phase shift of -(j-1)/m * 2*pi for j in 1:m.

### Parameters

Name | Default | Description
--- | --- | ---
m | 3 | number of phases
V[m] | fill(1, m) | Amplitudes of sine waves [V]
phase[m] | -{(j - 1)/m*2*Modelica.Const... | Phases of sine waves [rad]
freqHz[m] | fill(1, m) | Frequencies of sine waves [Hz]
offset[m] | zeros(m) | Voltage offsets [V]
startTime[m] | zeros(m) | Time offsets [s]

### Modelica definition

    model SineVoltage "Multiphase sine voltage source"
      extends Interfaces.TwoPlug;
      parameter Modelica.SIunits.Voltage V[       m]=fill(1, m) "Amplitudes of sine waves";
      parameter Modelica.SIunits.Angle phase[       m]=-{(j - 1)/m*2*Modelica.
          Constants.pi for j in 1:m} "Phases of sine waves";
      parameter Modelica.SIunits.Frequency freqHz[       m]=fill(1, m)
        "Frequencies of sine waves";
      parameter Modelica.SIunits.Voltage offset[       m]=zeros(m) "Voltage offsets";
      parameter Modelica.SIunits.Time startTime[       m]=zeros(m) "Time offsets";
      Modelica.Electrical.Analog.Sources.SineVoltage sineVoltage[
                                                                 m](
        final V=V,
        final phase=phase,
        final freqHz=freqHz,
        final offset=offset,
        final startTime=startTime);
    equation
      connect(sineVoltage.p, plug_p.pin);
      connect(sineVoltage.n, plug_n.pin);
    end SineVoltage;

## Modelica.Electrical.MultiPhase.Sources.SignalVoltage

Multiphase signal voltage source

### Information

Contains m signal controlled voltage sources (Modelica.Electrical.Analog.Sources.SignalVoltage)

### Parameters

Name | Default | Description
--- | --- | ---
m | 3 | number of phases

### Modelica definition

    model SignalVoltage "Multiphase signal voltage source"
      extends Interfaces.TwoPlug;
      Modelica.Blocks.Interfaces.InPort inPort(
                                               final n=m);
      Modelica.Electrical.Analog.Sources.SignalVoltage signalVoltage[
                                                                     m];
    equation
      signalVoltage.inPort.signal[1] = inPort.signal;
      connect(signalVoltage.p, plug_p.pin);
      connect(signalVoltage.n, plug_n.pin);
    end SignalVoltage;

## Modelica.Electrical.MultiPhase.Sources.SignalCurrent

Multiphase sine current source

### Information

Contains m signal controlled current sources (Modelica.Electrical.Analog.Sources.SignalCurrent)

### Parameters

Name | Default | Description
--- | --- | ---
m | 3 | number of phases

### Modelica definition

    model SignalCurrent "Multiphase sine current source"
      extends Interfaces.TwoPlug;
      Modelica.Blocks.Interfaces.InPort inPort(
                                               final n=m);
      Modelica.Electrical.Analog.Sources.SignalCurrent signalCurrent[
                                                                     m];
    equation
      signalCurrent.inPort.signal[1] = inPort.signal;
      connect(signalCurrent.p, plug_p.pin);
      connect(signalCurrent.n, plug_n.pin);
    end SignalCurrent;

## Modelica.Electrical.MultiPhase.Sources.SineCurrent

Multiphase sine current source

### Information

Contains m sine current sources (Modelica.Electrical.Analog.Sources.SineCurrent) with a default phase shift of -(j-1)/m * 2*pi for j in 1:m.

### Parameters

Name | Default | Description
--- | --- | ---
m | 3 | number of phases
I[m] | fill(1, m) | Amplitudes of sine waves [A]
phase[m] | -{(j - 1)/m*2*Modelica.Const... | Phases of sine waves [rad]
freqHz[m] | fill(1, m) | Frequencies of sine waves [Hz]
offset[m] | zeros(m) | Voltage offsets [V]
startTime[m] | zeros(m) | Time offsets [s]

### Modelica definition

    model SineCurrent "Multiphase sine current source"
      extends Interfaces.TwoPlug;
      parameter Modelica.SIunits.Current I[       m]=fill(1, m) "Amplitudes of sine waves";
      parameter Modelica.SIunits.Angle phase[       m]=-{(j - 1)/m*2*Modelica.
          Constants.pi for j in 1:m} "Phases of sine waves";
      parameter Modelica.SIunits.Frequency freqHz[       m]=fill(1, m)
        "Frequencies of sine waves";
      parameter Modelica.SIunits.Voltage offset[       m]=zeros(m) "Voltage offsets";
      parameter Modelica.SIunits.Time startTime[       m]=zeros(m) "Time offsets";
      Modelica.Electrical.Analog.Sources.SineCurrent sineCurrent[
                                                                 m](
        final I=I,
        final phase=phase,
        final freqHz=freqHz,
        final offset=offset,
        final startTime=startTime);
    equation
      connect(sineCurrent.p, plug_p.pin);
      connect(sineCurrent.n, plug_n.pin);
    end SineCurrent;