Test Case : getDP - Pancake
1. Introduction
This is the test case of High-Temperature Superconductors with transport current using the T-A Formulation on a Pancake geometry surrounded by air in axisymmetric coordinates.
2. Run the Calculation
The command line to run this case are :
gmsh -2 -bin pancake.geo getdp -m pancake.msh pancake.pro -solve MagDyn -pos MagDyn
3. Data Files
The case data files are available in Github here :
-
PRO file - Edit the file
-
GEO file - Edit the file
-
Data PRO file - Edit the file
As this case also use the library of functions and formulations of life-HTS, the library files are available in Github here.
4. Equation
The T-A Formulation in axysimmetric coordinates is :
With :
-
\(A_\theta\) : \(\theta\) component of potential magnetic field
-
\(T_r\) : \(r\) component of potential current density
-
\(\rho\) : electric resistivity \(\Omega \cdot m\)
-
\(\mu\) : electric permeability \(kg/A^2/S^2\)
5. Geometry
The geometry is a set of stacked tapes in axisymmetric coordinates \((r,z)\), surrounded by air.
Geometry
|
Zoom on Tapes
|
The geometrical domains are :
-
Conducting domain
: the tapes-
Upper Edge
: the top boundary of the tapes -
Lower Edge
: the bottom boundary of the tapes -
Conducting domain boundary
: the side boundaries of the tapes
-
-
Air
: the air surroundingConductor
-
Symmetry Line
: the boundary for the symmetry in axisymmetric coordinates
-
-
Spherical Shell
: the air surroundingConductor
-
Exterior boundary
: theSpherical Shell
's boundary
-
Symbol |
Description |
value |
unit |
\(W_{tapes} (\delta)\) |
tapes width |
\(1e-6\) |
m |
\(H_{tapes}\) |
tapes height |
\(4e-3\) |
m |
\(step\) |
space between the tapes |
\(0.15e-3\) |
m |
\(R_{inf}\) |
radius of infty border |
\(0.08\) |
m |
6. Parameters
The parameters of the problem are :
-
On
Tapes
:
Symbol |
Description |
Value |
Unit |
\(\mu=\mu_0\) |
magnetic permeability of vacuum |
\(4\pi.10^{-7}\) |
\(kg \, m / A^2 / S^2\) |
\(Wid\) |
tapes width |
\(1e-6\) |
\(m\) |
\(Hei\) |
tapes height |
\(4e-3\) |
\(m\) |
\(f\) |
frequency |
\(50\) |
\(Hz\) |
\(Imax\) |
max current |
\(120\) |
\(A\) |
\(Iapp\) |
applied current |
\(0.8*Imax*sin(2*\pi*f*t)\) |
\(A\) |
\(j_c\) |
critical current density |
\(3.10^{10}\) |
\(A/m^2\) |
\(e_c\) |
threshold electric field |
\(10^{-4}\) |
\(V/m\) |
\(n\) |
material dependent exponent |
\(40\) |
|
\(\rho\) |
electrical resistivity (described by the \(e-j\) power law) |
\(\frac{e_c}{j_c}\left(\frac{\mid\mid \partial_z T_r \mid\mid}{j_c}\right)^{(n)}\) |
\(\Omega\cdot m\) |
-
On
Air
:
Symbol |
Description |
Value |
Unit |
\(\mu=\mu_0\) |
magnetic permeability of vacuum |
\(4\pi.10^{-7}\) |
\(kg \, m / A^2 / S^2\) |
The parameters are separated between the PRO file, the PRO data file, and the files within the folder lib. On PRO file, the parameters are written :
Function{ // ------- PARAMETERS ------- // Superconductor parameters DefineConstant [jc = {3e10, Name "Input/3Material Properties/2jc (Am⁻²)"}]; // Critical current density [A/m2] DefineConstant [n = {40, Name "Input/3Material Properties/1n (-)"}]; // Superconductor exponent (n) value [-] // Excitation DefineConstant [IFraction = {0.8, Name "Input/4Source/0Fraction of max. current intensity (-)"}]; DefineConstant [Imax = IFraction*jc*W_tape*H_tape]; // Maximum imposed current intensity [A] DefineConstant [f = 50]; // Frequency of imposed current intensity [Hz] DefineConstant [timeStart = 0]; // Initial time [s] DefineConstant [timeFinal = 1/f]; // Final time for source definition [s] DefineConstant [timeFinalSimu = 1/f]; // Final time of simulation [s] // Sine source field I[] = Imax * Sin[2.0 * Pi * f* $Time]; // For the t-a-formulation thickness[Cond] = W_tape; thickness[Edge2] = W_tape; thickness[Air] = W_tape; }
// ---- Geometry parameters ---- DefineConstant[ changeGeometry = {0, Choices{0,1}, Name "Input/1Geometry/1Show geometry?"}, R_inf = {0.08, Visible changeGeometry, Name "Input/1Geometry/Outer radius (m)"}, // Outer shell radius [m] R_air = {0.06, Max R_inf, Visible changeGeometry, Name "Input/1Geometry/Inner radius (m)"}, // Inner shell radius [m] H_tape = {4e-3, Max R_air/2, Visible changeGeometry, Name "Input/1Geometry/Tapes height(m)"}, // Width of the tape [m] W_tape = {1e-6, Max R_air/2, Visible changeGeometry, Name "Input/1Geometry/Tapes Width(m)"}, // Height of the tape [m] W = {W_tape}, // Width of the tape [m] sep = {0.15e-3, Visible changeGeometry, Name "Input/1Geometry/separation between tapes(m)"}, meshLayerWidthTape = {0.001} // Width of the control mesh layer around the cylinder ];
The rest of the parameters are defined in the library file lawsAndFunctions.pro
7. Boundary Conditions
For the Dirichlet boundary conditions, we want to impose the transport current :
The transport current is the difference of current potential between the top and the bottom of the tapes divided by the thickness of the tapes, so we can impose \(0\) at the bottom and \(Iapp/thickness\) at the top of the tapes.
Finally we have :
-
On
Top
: \(T_r = Iapp/\delta\) -
On
Bottom
: \(T_r = 0\)
On PRO file, the boundary conditions are written :
Constraint { { Name Current ; Type Assign; Case { // t-a-formulation { Region Edge2; Value 1.0; TimeFunction I[]; } } } }
8. Weak Formulation
9. Implementation of the Weak Formulation
On getDP, we need to implement the Weak Formulation.
The T-A formulation is implemented in the library file formulations.pro :
On MPH file, the coefficients are written :
{ Name MagDyn_ta; Type FemEquation; Quantity { { Name t; Type Local; NameOfSpace t_space; } { Name T; Type Global; NameOfSpace t_space[T]; } { Name V; Type Global; NameOfSpace t_space[V]; } { Name a; Type Local; NameOfSpace a_space_2D; } } Equation { // Time derivative - current solution Galerkin { [ - Normal[] /\ Dof{a} , {d t} ]; In OmegaC; Integration Int; Jacobian Sur; } // Time derivative - previous solution Galerkin { [ Normal[] /\ {a}[1] , {d t} ]; In OmegaC; Integration Int; Jacobian Sur; } // ---- SUPER ---- // Induced currents // Non-linear OmegaC Galerkin { [ - $DTime * 1./thickness[] * rho[1./thickness[] *{d t} /\ Normal[], 1./thickness[] *mu[]*Norm[{t}] ] * Normal[] /\ (Dof{d t} /\ Normal[]) , {d t} ]; In NonLinOmegaC; Integration Int; Jacobian Sur; } GlobalTerm { [ - $DTime * Dof{V} , {T} ] ; In PositiveEdges ; } // Surface term Galerkin { [ - Dof{d t} /\ Normal[] , {a}]; In BndOmega_ha; Integration Int; Jacobian Sur; } } }
10. Numeric Parameters
-
Time
-
Initial Time : \(0s\)
-
Final Time : \(0.02s\)
-
Time Step : \(2e-4s\)
-
-
Mesh
Mesh
|
11. Results
The results that we obtain with the T-A formulation with getDP are compared to the results of the article COMSOL implementation of the H-φ-formulation with thin cuts for modeling superconductors with transport currents where the solver Comsol is used with the H-φ Formulation.
11.1. Electric current density
The electric current density \(J\) is defined by :
We compare the current density profiles with the T-A formulation on getDP and the H-φ formulation on Comsol on the \(O_z\) axis, on the middle tape of the pancake, at time \(t=0.02s\) for a maximum applied current of 150 T and \(n=40\).
11.2. Magnetic flux density
The magnetic flux density \(B\) is defined by:
We can see that when the transport current is applied the tapes are generating a magnetic field, that stay trapped in the superconductor once the applied current is 0.
We compare the distribution of the r-component of the magnetic flux density with the T-A formulation on getDP and the H-φ formulation on Comsol on the \(Oz\) axis, in the middle of the pancake \(t=0.02s\).
L2 Relative Error Norm : \(3.75 \%\) |
12. References
-
Real-time simulation of large-scale HTS systems: multi-scale and homogeneous models using the T–A formulation, Edgar Berrospe-Juarez et al 2019 Supercond. Sci. Technol. 32 065003, PDF
-
COMSOL Implementation of the H-ϕ-Formulation With Thin Cuts for Modeling Superconductors With Transport Currents, A. Arsenault, B. d. S. Alves and F. Sirois, in IEEE Transactions on Applied Superconductivity, vol. 31, no. 6, pp. 1-9, Sept. 2021, Art no. 6900109, doi: 10.1109/TASC.2021.3097245. PDF