Static vs Transient Simulation

General discussion about Elmer
Marc
Posts: 16
Joined: 30 Nov 2022, 16:37
Antispam: Yes

Static vs Transient Simulation

Post by Marc »

Hi all,

I am using Elmer for the very first time for a Project at my university, so i'm still having trouble with some aspects of Elmer. Im trying to establish a workflow for electromagnetic simulations of Permanent Magnet Synchronous Machines and later on also hope to simulate its sound radiation.
I've begun by trying to simulate in Elmer an already analysed motor (with femm) in order to validate my results. I've also tried to apply the techniques of already existing examples of PMSM simulations in Elmer, but the results do not quite convince me.

For now, I have compared the results of a steady state simulation and a transient simulation. I am quite happy with the results of my steady state simulation but I can't seem to achieve the same results in the transient simulation. I have attached screeshots of the results in ParaView.

I would really appreciate if you could help me and give some advice/tips on what I might be doing wrong or on what I might be missing?

Thank you

Regards,
Marc

PS: If my question is too broad, please let me know and i'll try to be more specific.
Attachments
Transient2.png
2nd step of Transient simualtion
(149.75 KiB) Not downloaded yet
Transient1.png
1st step of Transient simulation
(137.94 KiB) Not downloaded yet
Static.png
Result of Steady State Simualtion
(269.48 KiB) Not downloaded yet
Marc
Posts: 16
Joined: 30 Nov 2022, 16:37
Antispam: Yes

Re: Static vs Transient Simulation

Post by Marc »

I will also attach the .sif files of both simulations.
Attachments
case_transient.sif
(6.87 KiB) Downloaded 80 times
case_static.sif
(5.47 KiB) Downloaded 45 times
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Static vs Transient Simulation

Post by kevinarden »

In transient you may not have run long enough to reach a steady state for comparison. Or the time step size is too big for accuracy.
In general, nearly every process or system has both a steady state and a transient state. Also, a steady state establishes after a specific time in your system. However, a transient state is essentially the time between the beginning of the event and the steady state.
Therefore, in terms of a definition, a transient state is when a process variable or variables changes, but before the system reaches a steady state.

If you are comparing transient to steady state, it is not a valid comparison unless the transient is ran long enough to achieve a steady state, if a steady state exists.
FabianH
Posts: 19
Joined: 13 Nov 2020, 01:08
Antispam: Yes

Re: Static vs Transient Simulation

Post by FabianH »

Hi,

it looks like your boundary is not correct at your transient calculation. The flux lines close within your rotor section with much higher saturation.

The order in your sif-file is hard to read^^ check your sliding boundary. Its not clear what your 2nd boundary no. 14 is.


Best regards
Fabian
Marc
Posts: 16
Joined: 30 Nov 2022, 16:37
Antispam: Yes

Re: Static vs Transient Simulation

Post by Marc »

Hi all,

First all, thank you very for your very quick answers kevinarden and FabianH and sorry for my late reply.

In the last few days I have restarted the whole model in an attempt to make it easier to understand (I will attach all relevant documents later). I forgot to mention that the example i am following is the one in the following post:

viewtopic.php?t=3810

To your response FabianH. As far as I can understand after reading the Elmer manuals, when using the command "Mortar BC = Integer" for discontinuous boundaries, the second boundary given in this command is not defined by me, but is just a new boundary created by the command. The example in the link also used a similar format. So I really would be very surprised if that were to be the problem, since i have seen it work for other examples.

As for your answer kevinarden, it might well be that I have completely misunderstood the concept of steady state and transient simulation. As you can see in the screenshots attached, I have now compared the results of a steady state, transient and scanning simulation (respective .sif codes attached). However, I am still a bit puzzled as to why I get these results.
First of all, the result after a steady state simulation is still what i expected.
The result after a transient simulation is still not what I expected.
However, the result after a scanning simulation is exactly what I wished for.

Therefore, I would still like to understand why I get such results after the transient simulation when it seems to work properly in the example in the link. Due to the limited time I have for my project, after the discovery of the scanning simulation, I would like to prioritize, however, a new question:

Would a scanning type simulation allow me to get values over time and analyse these results in the time and frequency domains?

Thank you

Best Regards,
Marc

.sif for Steady State

Code: Select all

$ B_PM = 1.19			! [T] remanent flux density
$ mu_PM = 1.03		! permeability of PMs
$ H_PM = B_PM/(mu_PM*pi*4e-7) 	! magnetization of PMs
$ alpha = 17.5*pi/180
$ w_m = 1200/60*2*pi		! [rad/s] mech frequency
$ pp = 4			! number of polepairs
$ w_el = w_m*pp			! [rad/s] electrical frequency

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "ADPV4"
  Include Path ""
  Results Directory "ResultsADPV4stat"
End

Simulation
  Max Output Level = 5
  Coordinate System = Cartesian
  Coordinate Mapping(3) = 1 2 3
  Simulation Type = Steady state
  Steady State Max Iterations = 3
  Output Intervals(1) = 1
  Coordinate Scaling = 1e-3
  Solver Input File = case.sif
  Post File = case.vtu
End

Constants
  Permittivity of Vacuum = 8.85418781e-12
  Permeability of Vacuum = 1.25663706e-6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Materials !!!!!!!!!!!!!!!!!!!!!!!!!!!

Material 1
  Name = "M19_29G"
  H-B Curve = Variable coupled iter
    Real Cubic 
      Include  M19_29G.txt   
    End
  Electric Conductivity = 1.9e6  
End

Material 2
  Name = "Air (room temperature)"
  Relative Permittivity = 1.00059
  Relative Permeability = 1.00000037
End

Material 3
  Name = "PM1"
  Relative Permeability = $ mu_PM
  Magnetization 1 = $ H_PM*cos(-alpha)
  Magnetization 2 = $ H_PM*sin(-alpha)
  Electric Conductivity = 0
End

Material 4
  Name = "PM2"
  Relative Permeability = $ mu_PM
  Magnetization 1 = $ H_PM*cos(alpha)
  Magnetization 2 = $ H_PM*sin(alpha)
  Electric Conductivity = 0
End

Material 5
  Name = "Copper (generic)"
  Relative Permeability = 0.999994
  Electric Conductivity = 59.59e6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Boundary conditions !!!!!!!!!!!!!!!!!!!!!!!!!!!

Boundary Condition 1
  Target Boundaries(1) = 1 
  Name = "ZeroPotStator"
  Potential = 0
End

Boundary Condition 2
  Target Boundaries(1) = 2 
  Name = "ZeroPotRotor"
  Potential = 0
End

Boundary Condition 3
  Target Boundaries(1) = 3
  Name = "StatorPeriodic"
  Mortar BC = Integer 4
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 4:: Target Boundaries(1) = 4 

Boundary Condition 5
  Target Boundaries(1) = 5
  Name = "RotorPeriodic"
  Mortar BC = Integer 6
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 6:: Target Boundaries(1) = 6

Boundary Condition 7
  Target Boundaries(1) = 7
  Name = "Sliding" 
  Discontinuous Boundary = Logical True
  Mortar BC = Integer 9
  Galerkin Projector = Logical True
  Anti Rotational Projector = Logical True
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Body forces !!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!  Solver parameters !!!!!!!!!!!!!!!!!!!!!!!!!!!

Equation 1
  Name = "ModelDomain"
  Active Solvers(2) = 1 2
End

Solver 1
  Equation = MgDyn2D
  Procedure = "MagnetoDynamics2D" "MagnetoDynamics2D"
  Variable = Potential
  Exec Solver = Always
  
  Nonlinear System Convergence Tolerance = 1.0e-5
  Nonlinear System Max Iterations = 20
  Nonlinear System Relaxation Factor = 1

  Nonlinear System Convergence Without Constraints = Logical True

  Linear System Solver = Direct	
  Linear System Direct Method = UMFPACK
End

Solver 2
  Equation = ComputeB

  Target Variable= Potential
  Procedure = "MagnetoDynamics" "MagnetoDynamicsCalcFields"

  Linear System Solver = Iterative
  Linear System Iterative Method = BicgstabL
  Linear System Symmetric = True
  Linear System Max Iterations = 100
  Linear System Preconditioning = ILU2
  Linear System Convergence Tolerance = 1.0e-8
End

Solver 3
  Exec Solver = After Timestep
  Procedure = "ResultOutputSolve" "ResultOutputSolver"
  Output File Name = "stepEMF"
  Vtu Format = True
  Binary Output = True
  Single Precision = True
  Save Geometry Ids = True
End

Solver 4
  Exec Solver = After Timestep
  Equation = SaveLine
  Procedure = "SaveData" "SaveLine"
  Save Flux = True
  Flux Variable = B
  Filename = "lineEMF.dat"
End 

Solver 5
  Exec Solver = After Timestep
  Filename = "scalarsEMF.dat"
  Procedure = "SaveData" "SaveScalars"
  Show Norm Index = 1
End 

!!!!!!!!!!!!!!!!!!!!!!!!!!  Bodies !!!!!!!!!!!!!!!!!!!!!!!!!!!

Body 1
  Target Bodies(1) = 1
  Name = "Stator"
  Equation = 1
  Material = 1
End

Body 2
  Target Bodies(1) = 2
  Name = "Rotor"
  Equation = 1
  Material = 1
  Body Force = 1 
End

Body 3
  Target Bodies(1) = 3
  Name = "PM1"
  Equation = 1
  Material = 3
  Body Force = 1 
End

Body 4
  Target Bodies(1) = 4
  Name = "PM2"
  Equation = 1
  Material = 4
  Body Force = 1 
End

Body 5
  Target Bodies(1) = 5
  Name = "PMair"
  Equation = 1
  Material = 2
  Body Force = 1 
End

Body 6
  Target Bodies(1) = 6
  Name = "U+"
  Equation = 1
  Material = 5
End

Body 7
  Target Bodies(1) = 7
  Name = "W-"
  Equation = 1
  Material = 5
End

Body 8
  Target Bodies(1) = 8
  Name = "V-"
  Equation = 1
  Material = 5
End

Body 9
  Target Bodies(1) = 9
  Name = "RotorAirgap"
  Equation = 1
  Material = 2
  Body Force = 1
End

Body 10
  Target Bodies(1) = 10
  Name = "StatorAirgap"
  Equation = 1
  Material = 2
  R Inner = Real 80.57515e-3
  R Outer = Real 80.9625e-3
End
.sif for Transient

Code: Select all

$ B_PM = 1.19			! [T] remanent flux density
$ mu_PM = 1.03		! permeability of PMs
$ H_PM = B_PM/(mu_PM*pi*4e-7) 	! magnetization of PMs
$ alpha = 17.5*pi/180
$ w_m = 1200/60*2*pi		! [rad/s] mech frequency
$ pp = 4			! number of polepairs
$ w_el = w_m*pp			! [rad/s] electrical frequency

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "ADPV4"
  Include Path ""
  Results Directory "ResultsADPV4"
End

Simulation
  Max Output Level = 3
  Coordinate System = Cartesian 
  Coordinate Mapping(3) = 1 2 3
  Coordinate Scaling = 0.001
  Simulation Type = Transient
  Timestepping Method = BDF
  BDF Order = 1
  Timestep Sizes = $ 1/(w_el/2/pi)/100 !180 samples per el. period
  Timestep Intervals = 30
  Output Intervals = 1
  Solver Input File = case.sif
End

Constants
  Permittivity of Vacuum = 8.85418781e-12
  Permeability of Vacuum = 1.25663706e-6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Materials !!!!!!!!!!!!!!!!!!!!!!!!!!!

Material 1
  Name = "M19_29G"
  H-B Curve = Variable coupled iter
    Real Cubic 
      Include  M19_29G.txt   
    End
  Electric Conductivity = 1.9e6  
End

Material 2
  Name = "Air (room temperature)"
  Relative Permittivity = 1.00059
  Relative Permeability = 1.00000037
End

Material 3
  Name = "PM1"
  Relative Permeability = $ mu_PM
  Magnetization 1 = Variable time, timestep size 
   Real MATC "H_PM*cos((w_m*(tx(0)-tx(1)))-alpha)" 
  Magnetization 2 = Variable time, timestep size 
   Real MATC "H_PM*sin((w_m*(tx(0)-tx(1)))-alpha)" 
  Electric Conductivity = 0
End

Material 4
  Name = "PM2"
  Relative Permeability = $ mu_PM
  Magnetization 1 = Variable time, timestep size 
   Real MATC "H_PM*cos((w_m*(tx(0)-tx(1)))+alpha)" 
  Magnetization 2 = Variable time, timestep size 
   Real MATC "H_PM*sin((w_m*(tx(0)-tx(1)))+alpha)" 
  Electric Conductivity = 0
End

Material 5
  Name = "Copper (generic)"
  Relative Permeability = 0.999994
  Electric Conductivity = 59.59e6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Boundary conditions !!!!!!!!!!!!!!!!!!!!!!!!!!!

Boundary Condition 1
  Target Boundaries(1) = 1 
  Name = "ZeroPotStator"
  Potential = 0
End

Boundary Condition 2
  Target Boundaries(1) = 2 
  Name = "ZeroPotRotor"
  Potential = 0
End

Boundary Condition 3
  Target Boundaries(1) = 3
  Name = "StatorPeriodic"
  Mortar BC = Integer 4
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 4:: Target Boundaries(1) = 4 

Boundary Condition 5
  Target Boundaries(1) = 5
  Name = "RotorPeriodic"
  Mortar BC = Integer 6
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 6:: Target Boundaries(1) = 6

Boundary Condition 7
  Target Boundaries(1) = 7
  Name = "Sliding" 
  Discontinuous Boundary = Logical True
  Mortar BC = Integer 9
  Galerkin Projector = Logical True
  Anti Rotational Projector = Logical True
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Body forces !!!!!!!!!!!!!!!!!!!!!!!!!!!

Body Force 1
  Name = "BodyForce_Rotation"
  Mesh Rotate 3 = Variable time, timestep size
    Real MATC "180/pi*w_m*(tx(0)-tx(1))"  		! in degrees
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Solver parameters !!!!!!!!!!!!!!!!!!!!!!!!!!!

Equation 1
  Name = "ModelDomain"
  Active Solvers(2) = 2 3
End

Solver 1
  Exec Solver = Before Timestep
  Equation = MeshDeform
  Procedure = "RigidMeshMapper" "RigidMeshMapper"
End

Solver 2
  Equation = MgDyn2D
  Procedure = "MagnetoDynamics2D" "MagnetoDynamics2D"
  Variable = Potential
  Exec Solver = Always
  
  Nonlinear System Convergence Tolerance = 1.0e-5
  Nonlinear System Max Iterations = 20
  Nonlinear System Relaxation Factor = 1

  Nonlinear System Convergence Without Constraints = Logical True

  Linear System Solver = Direct	
  Linear System Direct Method = UMFPACK
End

Solver 3
  Equation = ComputeB

  Target Variable= Potential
  Procedure = "MagnetoDynamics" "MagnetoDynamicsCalcFields"

  Linear System Solver = Iterative
  Linear System Iterative Method = BicgstabL
  Linear System Symmetric = True
  Linear System Max Iterations = 100
  Linear System Preconditioning = ILU2
  Linear System Convergence Tolerance = 1.0e-8
End

Solver 4
  Exec Solver = After Timestep
  Procedure = "ResultOutputSolve" "ResultOutputSolver"
  Output File Name = "stepEMF"
  Vtu Format = True
  Binary Output = True
  Single Precision = True
  Save Geometry Ids = True
End

Solver 5
  Exec Solver = After Timestep
  Equation = SaveLine
  Procedure = "SaveData" "SaveLine"
  Save Flux = True
  Flux Variable = B
  Filename = "lineEMF.dat"
End 

Solver 6
  Exec Solver = After Timestep
  Filename = "scalarsEMF.dat"
  Procedure = "SaveData" "SaveScalars"
  Show Norm Index = 1
End 

!!!!!!!!!!!!!!!!!!!!!!!!!!  Bodies !!!!!!!!!!!!!!!!!!!!!!!!!!!

Body 1
  Target Bodies(1) = 1
  Name = "Stator"
  Equation = 1
  Material = 1
End

Body 2
  Target Bodies(1) = 2
  Name = "Rotor"
  Equation = 1
  Material = 1
  Body Force = 1 
End

Body 3
  Target Bodies(1) = 3
  Name = "PM1"
  Equation = 1
  Material = 3
  Body Force = 1 
End

Body 4
  Target Bodies(1) = 4
  Name = "PM2"
  Equation = 1
  Material = 4
  Body Force = 1 
End

Body 5
  Target Bodies(1) = 5
  Name = "PMair"
  Equation = 1
  Material = 2
  Body Force = 1 
End

Body 6
  Target Bodies(1) = 6
  Name = "U+"
  Equation = 1
  Material = 5
End

Body 7
  Target Bodies(1) = 7
  Name = "W-"
  Equation = 1
  Material = 5
End

Body 8
  Target Bodies(1) = 8
  Name = "V-"
  Equation = 1
  Material = 5
End

Body 9
  Target Bodies(1) = 9
  Name = "RotorAirgap"
  Equation = 1
  Material = 2
  Body Force = 1
End

Body 10
  Target Bodies(1) = 10
  Name = "StatorAirgap"
  Equation = 1
  Material = 2
  R Inner = Real 80.57515e-3
  R Outer = Real 80.9625e-3
End
.sif for Scanning

Code: Select all

$ B_PM = 1.19			! [T] remanent flux density
$ mu_PM = 1.03		! permeability of PMs
$ H_PM = B_PM/(mu_PM*pi*4e-7) 	! magnetization of PMs
$ alpha = 17.5*pi/180
$ w_m = 1200/60*2*pi		! [rad/s] mech frequency
$ pp = 4			! number of polepairs
$ w_el = w_m*pp			! [rad/s] electrical frequency

Header
  CHECK KEYWORDS Warn
  Mesh DB "." "ADPV4"
  Include Path ""
  Results Directory "ResultsADPV4scan"
End

Simulation
  Max Output Level = 3
  Coordinate System = Cartesian 
  Coordinate Mapping(3) = 1 2 3
  Coordinate Scaling = 0.001
  Simulation Type = Scanning
  TimeStepping Method = BDF
  Output Intervals = 1
  Solver Input File = case.sif
  Timestep Sizes = $ 1/(w_el/2/pi)/100 !180 samples per el. period
  Timestep Intervals = 30
End

Constants
  Permittivity of Vacuum = 8.85418781e-12
  Permeability of Vacuum = 1.25663706e-6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Materials !!!!!!!!!!!!!!!!!!!!!!!!!!!

Material 1
  Name = "M19_29G"
  H-B Curve = Variable coupled iter
    Real Cubic 
      Include  M19_29G.txt   
    End
  Electric Conductivity = 1.9e6  
End

Material 2
  Name = "Air (room temperature)"
  Relative Permittivity = 1.00059
  Relative Permeability = 1.00000037
End

Material 3
  Name = "PM1"
  Relative Permeability = $ mu_PM
  Magnetization 1 = Variable time
   Real MATC "H_PM*cos((w_m*(tx(0)))-alpha)" 
  Magnetization 2 = Variable time
   Real MATC "H_PM*sin((w_m*(tx(0)))-alpha)" 
  Electric Conductivity = 0
End

Material 4
  Name = "PM2"
  Relative Permeability = $ mu_PM
  Magnetization 1 = Variable time 
   Real MATC "H_PM*cos((w_m*(tx(0)))+alpha)" 
  Magnetization 2 = Variable time
   Real MATC "H_PM*sin((w_m*(tx(0)))+alpha)" 
  Electric Conductivity = 0
End

Material 5
  Name = "Copper (generic)"
  Relative Permeability = 0.999994
  Electric Conductivity = 59.59e6
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Boundary conditions !!!!!!!!!!!!!!!!!!!!!!!!!!!

Boundary Condition 1
  Target Boundaries(1) = 1 
  Name = "ZeroPotStator"
  Potential = 0
End

Boundary Condition 2
  Target Boundaries(1) = 2 
  Name = "ZeroPotRotor"
  Potential = 0
End

Boundary Condition 3
  Target Boundaries(1) = 3
  Name = "StatorPeriodic"
  Mortar BC = Integer 4
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 4:: Target Boundaries(1) = 4 

Boundary Condition 5
  Target Boundaries(1) = 5
  Name = "RotorPeriodic"
  Mortar BC = Integer 6
  Anti Radial Projector = Logical True
  Galerkin Projector = Logical True
  Mortar BC Static = Logical True
End
Boundary Condition 6:: Target Boundaries(1) = 6

Boundary Condition 7
  Target Boundaries(1) = 7
  Name = "Sliding" 
  Discontinuous Boundary = Logical True
  Mortar BC = Integer 9
  Galerkin Projector = Logical True
  Anti Rotational Projector = Logical True
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Body forces !!!!!!!!!!!!!!!!!!!!!!!!!!!

Body Force 1
  Name = "BodyForce_Rotation"
  Mesh Rotate 3 = Variable time
    Real MATC "180/pi*w_m*(tx(0))"  		! in degrees
End

!!!!!!!!!!!!!!!!!!!!!!!!!!  Solver parameters !!!!!!!!!!!!!!!!!!!!!!!!!!!

Equation 1
  Name = "ModelDomain"
  Active Solvers(2) = 2 3
End

Solver 1
  Exec Solver = Before Timestep
  Equation = MeshDeform
  Procedure = "RigidMeshMapper" "RigidMeshMapper"
End

Solver 2
  Equation = MgDyn2D
  Procedure = "MagnetoDynamics2D" "MagnetoDynamics2D"
  Variable = Potential
  Exec Solver = Always
  
  Nonlinear System Convergence Tolerance = 1.0e-5
  Nonlinear System Max Iterations = 20
  Nonlinear System Relaxation Factor = 1

  Nonlinear System Convergence Without Constraints = Logical True

  Linear System Solver = Direct	
  Linear System Direct Method = UMFPACK
End

Solver 3
  Equation = ComputeB

  Target Variable= Potential
  Procedure = "MagnetoDynamics" "MagnetoDynamicsCalcFields"

  Linear System Solver = Iterative
  Linear System Iterative Method = BicgstabL
  Linear System Symmetric = True
  Linear System Max Iterations = 100
  Linear System Preconditioning = ILU2
  Linear System Convergence Tolerance = 1.0e-8
End

Solver 4
  Exec Solver = After Timestep
  Procedure = "ResultOutputSolve" "ResultOutputSolver"
  Output File Name = "stepEMF"
  Vtu Format = True
  Binary Output = True
  Single Precision = True
  Save Geometry Ids = True
End

Solver 5
  Exec Solver = After Timestep
  Equation = SaveLine
  Procedure = "SaveData" "SaveLine"
  Save Flux = True
  Flux Variable = B
  Filename = "lineEMF.dat"
End 

Solver 6
  Exec Solver = After Timestep
  Filename = "scalarsEMF.dat"
  Procedure = "SaveData" "SaveScalars"
  Show Norm Index = 1
End 

!!!!!!!!!!!!!!!!!!!!!!!!!!  Bodies !!!!!!!!!!!!!!!!!!!!!!!!!!!

Body 1
  Target Bodies(1) = 1
  Name = "Stator"
  Equation = 1
  Material = 1
End

Body 2
  Target Bodies(1) = 2
  Name = "Rotor"
  Equation = 1
  Material = 1
  Body Force = 1 
End

Body 3
  Target Bodies(1) = 3
  Name = "PM1"
  Equation = 1
  Material = 3
  Body Force = 1 
End

Body 4
  Target Bodies(1) = 4
  Name = "PM2"
  Equation = 1
  Material = 4
  Body Force = 1 
End

Body 5
  Target Bodies(1) = 5
  Name = "PMair"
  Equation = 1
  Material = 2
  Body Force = 1 
End

Body 6
  Target Bodies(1) = 6
  Name = "U+"
  Equation = 1
  Material = 5
End

Body 7
  Target Bodies(1) = 7
  Name = "W-"
  Equation = 1
  Material = 5
End

Body 8
  Target Bodies(1) = 8
  Name = "V-"
  Equation = 1
  Material = 5
End

Body 9
  Target Bodies(1) = 9
  Name = "RotorAirgap"
  Equation = 1
  Material = 2
  Body Force = 1
End

Body 10
  Target Bodies(1) = 10
  Name = "StatorAirgap"
  Equation = 1
  Material = 2
  R Inner = Real 80.57515e-3
  R Outer = Real 80.9625e-3
End
Attachments
Transient.zip
(417.1 KiB) Downloaded 41 times
steadystate.png
(261.04 KiB) Not downloaded yet
Scanning.zip
(767.45 KiB) Downloaded 38 times
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Static vs Transient Simulation

Post by kevinarden »

Mortor BC = Integer ?

Mortor defines the interaction of two model surfaces in the mesh. The Mortor BC = integer command tells the solver which two surfaces are in the mortor. The integer is the number of the other BC which defines what surface

In this example model surface 6 (the target of BC 3) is mortor to model surface 9 (the target of BC 4)
Boundary Condition 3
Target Boundaries(1) = 6
Name = "StatorPeriodic"
Mortar BC = Integer 4
End
Boundary Condition 4:: Target Boundaries(1) = 9
kevinarden
Posts: 2237
Joined: 25 Jan 2019, 01:28
Antispam: Yes

Re: Static vs Transient Simulation

Post by kevinarden »

Steady State, Transient, Scanning
Steady State is not static as implied by the title of the post. Steady state means the conditions are not change. Take a rotating fly wheel, it may be spinning at a steady RPM, which means there is some input keeping it at a steady RPM or it would be slowing down. However, it is rotating so it is not static.
Transient is a change in steady state, if the fly wheel is at rest, it takes time to spin it up to a steady RPM. As the RPMs are increase it is in a transient condition, the conditions are changing over time.
Scanning is not a transient solution, it is a special case of steady state where several different steady state responses can be solved for in one sif file.
The variable time is used in scanning to change some variable in the solution but it is still a steady state solution.
steadystate.PNG
steadystate.PNG (35.03 KiB) Viewed 1122 times
Your steady state solution solves the steady state condition of the motor with a specific magnetism, it is way out on the time curve where things have quit changing.
Your transient solution does not run for very long, a total time of 0.00375 seconds, it is likely that the motor is just starting to get up to speed, and the magnetism changes with each time step. But the motor is probably still climbing up the slope, if you want the transient to match any of the steady state solutions, then you have to run it for a long time, without a change in forces acting on the body. Especially since no initial conditions exists, the default is starting zero. You can define initial conditions, you can even use the steady state as the initial condition, then change the system using transient input.
In your scanning you are solving several different steady state conditions with different magnetisms defined using the variable time, which in this case is not really time, just a convenient way to change the magnetism in successive steady state solutions. Results are not available in time. It is just a series of steady state solutions at different levels of magnetism. i.e the flywheel has already spun up to full speed with the first magnetism input, then with the send magnetism input, and so forth.
FabianH
Posts: 19
Joined: 13 Nov 2020, 01:08
Antispam: Yes

Re: Static vs Transient Simulation

Post by FabianH »

As Kevin wrote, you need two surfaces that are coupled by a boundary condition. For a 2D model for example, gmsh says Physical Line for that. Both Lines are coupled by the MortarBC. You can add Target Boundaries, if necessary.

Code: Select all

Boundary Condition 1
  Name = Sliding_Rotor
End

Boundary Condition 2
  Name = Sliding_Stator
  Mortar BC = 1 
  Rotational Projector = True ! Add Anti in case of
  Galerkin Projector = True
End
Maybe you can provide your Elmer mesh files for your transient calculation. Your steady state results should be correct, because you have no rotor movement.

@Kevin: As I understood Marc, he will use the transient solver for quasi static calculations of his motor. Thats possible, when he have a fixed RPM (no inertia) and no conductivity due to eddy currents. Otherwise I agree with you that the terms static and steady state are mixed up.
Steady state never made sense for me with PM machines, it was only used for thermal analyzes or induction machines. Is it even possible to calculate pm machines with the steady state solver to get meaningful results?
raback
Site Admin
Posts: 4812
Joined: 22 Aug 2009, 11:57
Antispam: Yes
Location: Espoo, Finland
Contact:

Re: Static vs Transient Simulation

Post by raback »

Hi,

Just some random comments:
  • What I (and Pavel) computed was for these synchronous machines was usually harmonic and transient simulation. Steady state is just a common umbrella over simulations that do not span over time. Also the iterations within one timestep to make simulation consistent are called "steady state iterations" in Elmer.
  • The transient simulation may need a few rotations for converged results.
  • There has been quite a bit of developments since Pavel's models. I hope the models are backward compatible but there are also lot of improvements. I think there was one message of these improvements. Some have not been properly published yet so if somebody has a nice sync. machine we are open for collaboration.
-Peter
Marc
Posts: 16
Joined: 30 Nov 2022, 16:37
Antispam: Yes

Re: Static vs Transient Simulation

Post by Marc »

Thank you very much for your responses, they are really helpful!

The simulation results I have been showing are for the case of a non-loaded machine, i.e. no current is flowing through the stator windings. My intentions are to also let current flow through the wedges. I want to try and compute the radial and tangential magnetic field components on the teeth of the stator in order to get the radial forces acting on these. Further on, these forces should be the input forces for a simulation of the sound radiation of the PMSM. My hope is that by computing the forces depending on time (or in the frequency domain) I can then perform a Fourier Transformation to get the harmonic components.
This is why my first approach was to use a transient simulation, but maybe I have understood all wrong or I have missed an easier way.

I have know performed some more simulations:
- scanning
- transient (with two different timestep sizes to allow full magnetization of the stator)
- transient (implementing a restart file from a steady state simulation to enforce initial conditions)

The results displayed by the scanning simulation still represent the behaviour I was expecting and the transient results don't.

Both .sif files are pretty much the same but differ only in the simualtion settings. Could it be that my .sif file for transient simulations is still completely wrong? (I have implemented the tips on boundary conditions)

I will try and add the mesh files in a following post.
Attachments
Scanning Sim
Scanning Sim
scan.gif (944.89 KiB) Viewed 1066 times
Transient Sim with two different steps
Transient Sim with two different steps
twostep.gif (1012.02 KiB) Viewed 1066 times
Transient Sim with start form restart file
Transient Sim with start form restart file
restartfile.gif (1002.18 KiB) Viewed 1066 times
Post Reply