ansys.dyna.core.pre.dynaem#
Module for creating an electromagnetism (EM) input deck.
Classes#
Generic enumeration. |
|
Contains methods for creating keywords related to EM. |
|
Generic enumeration. |
|
Generic enumeration. |
|
Generic enumeration. |
|
Generic enumeration. |
|
Enables the EM solver and sets its options. |
|
Generic enumeration. |
|
Defines an electrical circuit. |
|
Generic enumeration. |
|
Detects contact between conductors. |
|
Generic enumeration. |
|
Defines an isopotential. |
|
Measures the total current flowing through a given section of the conductor. |
|
Generic enumeration. |
|
Define parameters for a Randles Cell. |
Module Contents#
- class ansys.dyna.core.pre.dynaem.Isopotential_ConnType[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.DynaEM[source]#
Bases:
ansys.dyna.core.pre.dynabase.DynaBase
Contains methods for creating keywords related to EM.
- create_em_control(emsol=0, numls=100, macrodt=0, ncylfem=5000, ncylbem=5000)[source]#
Enable the EM solver and set its options.
- Parameters:
- emsol
int
,optional
EM solver. The default is
0
. Options are:EQ.-1: Turn off the EM solver after reading the EM keywords.
EQ.1: Eddy current solver.
EQ.2: Induced heating solver.
EQ.3: Resistive heating solver.
EQ.11: Electrophysiology monodomain.
EQ.12: Electrophysiology bidomain.
EQ.13: Electrophysiology monodomain coupled with bidomain.
- numls
int
,optional
Number of local EM steps in a whole period for when
emsol = 2
. The default is100
.- macrodt
int
,optional
Macro time step for when
emsol = 2
. The default is0
.- ncylfem
int
,optional
Number of electromagnetism cycles between the recalculation of FEM matrices. The default is
5000
.- ncylbem
int
,optional
Number of electromagnetism cycles between the recalculation of BEM matrices. The default is
5000
.
- emsol
- Returns:
- bool
True
when successful,False
when failed.
- create_em_timestep(tstype, dtconst)[source]#
Control the EM time step and its evolution.
- Parameters:
- tstype
int
Time step type. Options are:
EQ.1: Constant time step given in DTCONST
EQ.2: Time step as a function of time given by a load curve specified in LCID
EQ.3: Automatic time step computation, depending on the solver type
This time step is then multiplied by FACTOR.
- dtconst
float
Constant value for the time step for when
tstype = 1
.
- tstype
- Returns:
- bool
True
when successful,False
when failed.
- create_em_contact(contid=0, dtype=0, psidm=0, psids=0, eps1=0.3, eps2=0.3, eps3=0.3, d0=0)[source]#
Create an optional card for defining options on electromagnetic contacts between two sets of parts.
- Parameters:
- contid
int
,optional
Electromagnetic contact ID. The default is
0
.- dtype
int
,optional
Detection type. The default is
0
. Options are:EQ.0: Contact type 0
EQ.1: Contact type 1
- psidm
int
,optional
Master part set ID. The default is
0
.- psids
int
Slave part set ID. The default is
0
.- eps1
float
,optional
First contact coefficient for contact detection conditions. The default is
0.3
.- eps2
float
,optional
Second contact coefficient for contact detection conditions. The default is
0.3
.- eps3
float
,optional
Third contact coefficient for contact detection conditions. The default is
0.3
.- d0
float
,optional
Contact condition 3 when
dtype = 1
.
- contid
- Returns:
- bool
True
when successful,False
when failed.
- set_rogowsky_coil_to_output_current(segmentset=SegmentSet([[]]), settype=1, curtyp=1)[source]#
Define Rogowsky coils to measure a global current versus time through a segment set or a node set.
- Parameters:
- rogid
int
Rogowsky coil ID.
- setid
int
Segment or node set ID.
- settype
int
,optional
Type of set. The default is
1
. Options are:EQ.1: Segment set
EQ.2: Node set
- curtyp
int
Type of current measured. The default is
1
. Options are:EQ.1: Volume current
EQ.2: Surface current (not available yet}
EQ.3: Magnetic field flow (B field times area)
- rogid
- Returns:
- bool
True
when successful,False
when failed.
- create_em_mat001(mid, mtype, sigma)[source]#
Create an electromagnetic material type and set properties for a material whose permeability equals the free space permeability.
- Parameters:
- mid
int
Material ID.
- mtype
int
Electromagnetism type of the material. Options are:
EQ.0: Air or vacuum
EQ.1: Insulator material (These materials have the same electromagnetism behavior as EQ.0.)
EQ.2: Conductor carrying a source
EQ.3: Fluid conductor
EQ.4: Conductor not connected to any current or voltage source, where the eddy current problem is solved
- sigma
float
Initial electrical conductivity of the material.
- mid
- Returns:
- bool
True
when successful,False
when failed.
- create_em_mat002(mid, mtype, sigma, eosid, murel)[source]#
Create an electromagnetic material type and set properties whose permeability is different than the free space permeability.
- Parameters:
- mid
int
Material ID.
- mtype
int
Electromagnetism type of the material. Options are:
EQ.0: Air or vacuum
EQ.1: Insulator material (These materials have the same electromagnetism behavior as EQ.0.)
EQ.2: Conductor carrying a source
EQ.4: Conductor not connected to any current or voltage source, where the wddy current problem is solved
- sigma
float
Initial electrical conductivity of the material.
- eosid
int
ID of the EOS to use for the electrical conductivity.
- murel
float
Relative permeability, which is the ratio of the permeability of a specific medium to the permeability of the free space.
- mid
- Returns:
- bool
True
when successful,False
when failed.
- create_em_solver_fembem_monolithic(mtype=0, stype=0, abstol=1e-06, reltol=0.0001, maxit=500)[source]#
Turn on the monolithic FEM-BEM solver.
- Parameters:
- mtype
int
,optional
Monolithic solver type. The default is
0
. The only option is EQ.0: Direct symmetric solver.- stype
int
Solver type. The default is
0
. Options are:EQ.0: MINRES iterative solver
EQ.1: GMRES iterative solver
- abstol
float
,optional
Absolute tolerance. The default is
1e-6
.- reltol
float
,optional
Relative tolerance. The default is
1e-4
.- maxit
int
, optional. Maximum number of iterations. The default is 500.
- mtype
- Returns:
- bool
True
when successful,False
when failed.
- create_em_output(mats=0, matf=0, sols=0, solf=0)[source]#
Define the level of EM-related output on the screen and in the message file.
- Parameters:
- mats
int
,optional
Level of matrix assembly output to show on the screen. The default is
0
. Options are:EQ.0: No output
EQ.1: Basic assembly steps
EQ.2: Basic assembly steps + percentage completed + final statistics
EQ.3: Basic assembly steps + percentage completed + statistics at each percentage of completion
- matf
int
,optional
Level of matrix assembly output to write to the message file. The default is
0
. Options are:EQ.0: No output
EQ.1: Basic assembly steps
EQ.2: Basic assembly steps + percentage completed + final statistics
EQ.3: Vasic assembly steps + percentage completed + statistics at each percentage of completion
- sols
int
Level of solver output to show on the screen. The default is
0
. Options are:EQ.0: No output
EQ.1: Global information at each FEM iteration
EQ.2: Detailed information at each FEM iteration
- solf
int
,optional
Level of solver output to write to the message file. The default is
0
. Options are:EQ.0: No output
EQ.1: Global information at each FEM iteration
0 EQ.2: Detailed information at each FEM iteration
- mats
- Returns:
- bool
True
when successful,False
when failed.
- connect_isopotential(contype=Isopotential_ConnType.SHORT_CIRCUIT, isopotential1=None, isopotential2=None, value=0, func=None, curve=None, inductance=0, capacity=0, initial_voltage=0)[source]#
Define a connection between two isopotentials or between an isopotential and the ground.
- Parameters:
- contype
Isopotential_ConnType
Isopotential connection type. The default is
SHORT_CIRCUIT
.- isopotential1
Isopotential
First isopotential to connect.
- isopotential2
Isopotential
Second isopotential to connect.
- value
float
,optional
Value of the resistance, voltage, or current depending on the isopotential connection type. The default is
0
.- func
- curve
- inductance
- capacity
- initial voltage
- contype
- Returns:
int
Connection ID.
- create_Permanent_magnet(id, partid, mtype, north, sourth, hc)[source]#
Create a permanent magnet.
- Parameters:
- id
int
ID of the magnet.
- partid
int
Part ID.
- mtype
int
,optional
Magnet definition type. Options are:
EQ.0: Magnet defined by two node set for the north and south poles
EQ.1: Magnet defined by two segments set for the north and south poles
EQ.3: Magnet defined by a global vector orientation
EQ.4: Magnet defined by a global vector orientation given by two node IDs
- north
int
ID of the magnet’s north face for
mtype = 0
andmtype = 1
.- sourth
int
ID of the magnet’s south face for
mtype = 0
andmtype = 1
.- hc
int
Coercive force.
- id
- Returns:
- bool
True
when successful,False
when failed.
- class ansys.dyna.core.pre.dynaem.EMType[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.EMDimension[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.BEMSOLVER[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.FEMSOLVER[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.EMAnalysis(type=EMType.EDDY_CURRENT)[source]#
Enables the EM solver and sets its options.
- Parameters:
- type
int
Electromagnetism solver. The default is
EDDY_CURRENT
. Options are:EQ.1: Eddy current solver
EQ.2: Induced heating solver
EQ.3: Resistive heating solver
EQ.11: Electrophysiology monodomain
- type
- set_solver_bem(solver=BEMSOLVER.PCG, relative_tol=1e-06, max_iteration=1000)[source]#
Set the type of linear solver, pre-conditioner, and tolerance for the EM BEM solver.
- set_solver_fem(solver=FEMSOLVER.DIRECT_SOLVER, relative_tol=1e-06, max_iteration=1000)[source]#
Set some parameters for the EM FEM solver.
- class ansys.dyna.core.pre.dynaem.CircuitType[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.Circuit(loadcurve, circuit_type=CircuitType.IMPOSED_CURRENT_VS_TIME)[source]#
Defines an electrical circuit.
- Parameters:
- circtyp
int
Circuit type. Options are:
EQ.1: Imposed current vs time defined by a load curve
EQ.2: Imposed voltage vs time defined by a load curve
- loadcurve
Curve
Load curve for when the
circtyp
parameter is set to1
,2
,21
or22
.
- circtyp
- set_current(current, current_inlet, current_outlet)[source]#
Define the segment set for the current.
- Parameters:
- current
SegmentSet
Segment set for the current.
- current_inlet
SegmentSet
Segment set for input voltage or input current for CIRCTYP.EQ.2/3/12/22 and CIRCTYP.EQ 1/11/21 respectively.
- current_outlet
SegmentSet
Segment set for the output voltage or output current for CIRCTYP = 2/3/12/22 and CIRCTYP = 1/11/21 respectively.
- current
- class ansys.dyna.core.pre.dynaem.EMContactType[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.EMContact(contact_type=EMContactType.NODE_TO_NODE_PENALTY_BASED_CONTACT)[source]#
Detects contact between conductors.
If no contact parts are defined, this method detects contact between all active parts associated with a conducting material.
- class ansys.dyna.core.pre.dynaem.EMRandlesLayer[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.Isopotential(set=None, layer=EMRandlesLayer.DEFAULT)[source]#
Defines an isopotential.
This method constrain nodes so that they have the same scalar potential value.
- Parameters:
- set
Set
Segment set or node set.
- set
- class ansys.dyna.core.pre.dynaem.RogoCoil(set=None)[source]#
Bases:
ansys.dyna.core.pre.dynabase.BaseObj
Measures the total current flowing through a given section of the conductor.
- Parameters:
- set
Set
Segment set.
- set
- class ansys.dyna.core.pre.dynaem.RandlesCellType[source]#
Bases:
ansys.dyna.core.pre.dynabase.Enum
Generic enumeration.
Derive from this class to define new enumerations.
- class ansys.dyna.core.pre.dynaem.RandlesCell(set=None)[source]#
Define parameters for a Randles Cell.
- set_batmac_model(cell_type=RandlesCellType.RANDLES_CELL_1_ORDER, cell_parts=None, area=2, cell_capacity=0, soc_conversion_factor=0, charge_init_state=0, equilibrium_voltage=None, circuit_parameter=None, constant_temperature=0, temperature_from_thermal_solver=False, add_heating_to_thermal_solver=False)[source]#
define the distributed Randles circuit parameters for a Randles cell when using the batmac model.
- set_randles_short(resistances_func=None)[source]#
Define conditions to turn on a Randles short (replace one or several Randles circuits by resistances), and to define the value of the short resistance.
- Parameters:
- resistances_func
Function
Define the local resistance function of local parameters for the local Randles circuit.
- resistances_func