# Reference page for PolyphaseCircuit

## Contents

- Summary
- this = PolyphaseCircuit(
*arguments*) Class for finite-element representation of polyphase - this.coil_current(
*arguments*) Coil current from solution. - this.coil_current_density(
*arguments*) Coil current densities from solution. - this.conductor_area_per_turn_and_coil(
*arguments*) Equivalent conductor area per single - this.conductor_current(
*arguments*) Conductor currents from solution. - PolyphaseCircuit/this.derivate_phase_quantity(
*arguments*) is a function. - PolyphaseCircuit/this.domains(
*arguments*) is a function. - this.filling_factor(
*arguments*) Conductor filling factor. - this.get_DC_resistance_matrix(
*arguments*) DC-resistance matrix for the FE - this.get_EW_inductance_matrix(
*arguments*) End-winding inductance matrix. - PolyphaseCircuit/this.get_cc_blocks(
*arguments*) is a function. - this.get_ndof(
*arguments*) Number of dofs associated with the circuit, for the given - get_EW_impedance_matrix Complex end-winding impedance matrix.
- this.get_stranded_resistance_matrix(
*arguments*) Resistance matrix for stranded - half_coil_length Half of turn length.
- this.init(
*arguments*) Initialize circuit matrices. - this.init_for_simulation(
*arguments*) Init Circuit for simulation. - PolyphaseCircuit.this.line_current_matrix(
*arguments*) is a function. - PolyphaseCircuit.this.line_to_line_voltage_matrix(
*arguments*) is a function. - PolyphaseCircuit/this.losses(
*arguments*) is a function. - PolyphaseCircuit/this.mass(
*arguments*) is a function. - this.meshed_conductor_area_per_layer_and_turn(
*arguments*) Raw surface area. - PolyphaseCircuit/this.parallel_paths(
*arguments*) is a function. - this.parse_space_vector(
*arguments*) Transform quantity to dq-form. - this.parse_terminal_voltage(
*arguments*) Parse terminal voltages from phase voltages. - this.phase_bemf(
*arguments*) Phase induced voltage. - this.phase_current(
*arguments*) Phase current from solution. - this.phase_flux_linkage(
*arguments*) Phase flux linkage. - this.phase_impedance_voltage_drop(
*arguments*) Phase voltage drops from - set_load1 Increment load vector.
- set_load1 Increment load vector.
- PolyphaseCircuit/this.set_parent(
*arguments*) is a function. - this.set_source(
*arguments*) Set circuit source. - PolyphaseCircuit/this.slot_area(
*arguments*) is a function. - PolyphaseCircuit/this.slot_conductor_area(
*arguments*) is a function. - this.stranded_conductor_losses(
*arguments*) Compute losses in stranded conductors. - this.terminal_bemf(
*arguments*) Terminal induced voltage. - this.terminal_current(
*arguments*) Terminal current from solution. - this.terminal_flux_linkace(
*arguments*) Terminal flux linkage. - this.terminal_impedance_voltage_drop(
*arguments*) Phase voltage drops from - this.terminal_voltage(
*arguments*) Terminal voltages from solution.

## Summary

PolyphaseCircuit Class for finite-element representation of polyphase circuits.

this = PolyphaseCircuit(name, winding_spec)

Returns a new PolyphaseCircuit object with the given name and associated with the PolyphaseWinding winding specification.

A PolyphaseCircuit is largely characterized by its `winding_spec` property = a PolyphaseWindingSpec object. This winding specification object contains information such as number of turns and parallel paths, winding layout matrix, loop matrix, etc.

The PolyphaseCircuit then handles the finite-element representation of the winding, as well as the different supply modes. See `this.set_load`. Documentation for PolyphaseCircuit doc PolyphaseCircuit

# PROPERTIES

- PolyphaseCircuit.circuit_analysis_arguments is a property.

- include_lew - include end-winding inductance, boolean

- supply_mode - supply mode.

- winding_spec - winding parameters specification; a PolyphaseWinding object

# METHODS

Class methods are listed below. Inherited methods are not included.

## this = PolyphaseCircuit(*arguments*) Class for finite-element representation of polyphase

circuits.

*this* = **PolyphaseCircuit**(name, winding_spec)

Returns a new **PolyphaseCircuit** object with the given name and associated with the PolyphaseWinding winding specification.

A **PolyphaseCircuit** is largely characterized by its `winding_spec` property = a PolyphaseWindingSpec object. This winding specification object contains information such as number of turns and parallel paths, winding layout matrix, loop matrix, etc.

The **PolyphaseCircuit** then handles the finite-element representation of the winding, as well as the different supply modes. See ` this.set_load`.

## this.coil_current(*arguments*) Coil current from solution.

I = **coil_current**(*this*, solution), where

solution = a MagneticsSolution object.

## this.coil_current_density(*arguments*) Coil current densities from solution.

I = **coil_current_density**(*this*, solution), where

solution = a MagneticsSolution object.

## this.conductor_area_per_turn_and_coil(*arguments*) Equivalent conductor area per single

turn-side, considering fill-factor.

## this.conductor_current(*arguments*) Conductor currents from solution.

I = **conductor_current**(*this*, solution), where

solution = a MagneticsSolution object.

I is a vector of currents, row per meshed conductor.

## PolyphaseCircuit/this.derivate_phase_quantity(*arguments*) is a function.

E = **derivate_phase_quantity**(*this*, QoI, solution, varargin)

## PolyphaseCircuit/this.domains(*arguments*) is a function.

ds = **domains**(*this*)

## this.filling_factor(*arguments*) Conductor filling factor.

## this.get_DC_resistance_matrix(*arguments*) DC-resistance matrix for the FE

problem.

## this.get_EW_inductance_matrix(*arguments*) End-winding inductance matrix.

## PolyphaseCircuit/this.get_cc_blocks(*arguments*) is a function.

[Scc, Mcc] = **get_cc_blocks**(*this*, problem, type)

## this.get_ndof(*arguments*) Number of dofs associated with the circuit, for the given

problem and type.

Nui = **get_ndof**(*this*, problem, type, pars), where

- problem = MagneticsProblem or similar

- type = string, usually "static" / "harmonic" / "stepping" Help for PolyphaseCircuit/*get_ndof* is inherited from superclass CIRCUITBASE

## get_EW_impedance_matrix Complex end-winding impedance matrix.

## this.get_stranded_resistance_matrix(*arguments*) Resistance matrix for stranded

parts of the winding (all EW + stranded active conductors)

## half_coil_length Half of turn length.

## this.init(*arguments*) Initialize circuit matrices.

## this.init_for_simulation(*arguments*) Init Circuit for simulation.

**init_for_simulation**(*this*, problem, type, pars) Help for PolyphaseCircuit/*init_for_simulation* is inherited from superclass CIRCUITBASE

## PolyphaseCircuit.this.line_current_matrix(*arguments*) is a function.

M = **line_current_matrix**

## PolyphaseCircuit.this.line_to_line_voltage_matrix(*arguments*) is a function.

M = **line_to_line_voltage_matrix**

## PolyphaseCircuit/this.losses(*arguments*) is a function.

[Pmean, data] = **losses**(*this*, solution, varargin)

## PolyphaseCircuit/this.mass(*arguments*) is a function.

m = **mass**(*this*)

## this.meshed_conductor_area_per_layer_and_turn(*arguments*) Raw surface area.

Returns the actual meshed area per meshed turn.

## PolyphaseCircuit/this.parallel_paths(*arguments*) is a function.

a = **parallel_paths**(*this*)

## this.parse_space_vector(*arguments*) Transform quantity to dq-form.

sv = **parse_space_vector**(*this*, Q, solution)

Q = quantity of interest, phases x steps

## this.parse_terminal_voltage(*arguments*) Parse terminal voltages from phase voltages.

U = **parse_terminal_voltage**(*this*, U, solution, varargin), where

solution = a MagneticsSolution object.

## this.phase_bemf(*arguments*) Phase induced voltage.

U = **phase_bemf**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

U = time-derivative of *this*.terminal_flux_linkage

## this.phase_current(*arguments*) Phase current from solution.

I = **phase_current**(*this*, solution), where

solution = a MagneticsSolution object.

## this.phase_flux_linkage(*arguments*) Phase flux linkage.

Phi = **phase_flux_linkage**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

## this.phase_impedance_voltage_drop(*arguments*) Phase voltage drops from

solution.

U = **phase_impedance_voltage_drop**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

## set_load1 Increment load vector.

## set_load1 Increment load vector.

## PolyphaseCircuit/this.set_parent(*arguments*) is a function.

**set_parent**(*this*, parent)

## this.set_source(*arguments*) Set circuit source.

**set_source**(*this*, source_type, source)

Set the winding source, see below.

source_type : string specifying source type:

- 'uniform coil current' : Uses the specified coil current, distributed uniformly over the conductor Domain areas. Works for any analysis type.

- 'terminal current source' : Specifies the net terminal current.

- 'terminal voltage' : Specifies the potential (V) at each terminal, with respect to an arbitrary reference point. For harmonic/stepping analysis only.

source : Source values:

- phases x steps array : used directly as such.

- function handle : typically to VoltageSource.U method

## PolyphaseCircuit/this.slot_area(*arguments*) is a function.

A = **slot_area**(*this*)

## PolyphaseCircuit/this.slot_conductor_area(*arguments*) is a function.

A = **slot_conductor_area**(*this*)

## this.stranded_conductor_losses(*arguments*) Compute losses in stranded conductors.

## this.terminal_bemf(*arguments*) Terminal induced voltage.

U = **terminal_bemf**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

U = time-derivative of *this*.terminal_flux_linkage

## this.terminal_current(*arguments*) Terminal current from solution.

I = **terminal_current**(*this*, solution), where

solution = a MagneticsSolution object.

## this.terminal_flux_linkace(*arguments*) Terminal flux linkage.

Phi = **terminal_flux_linkace**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

## this.terminal_impedance_voltage_drop(*arguments*) Phase voltage drops from

solution.

U = **terminal_impedance_voltage_drop**(*this*, solution, varargin), where

solution = a MagneticsSolution object.

## this.terminal_voltage(*arguments*) Terminal voltages from solution.

U = **terminal_voltage**(*this*, solution, varargin), where

solution = a MagneticsSolution object.