From b2f488fed728f619c5cfde8ce15add6104f7c55a Mon Sep 17 00:00:00 2001 From: "Documenter.jl" Date: Wed, 30 Oct 2024 18:21:30 +0000 Subject: [PATCH] build based on 33691dd --- dev/.documenter-siteinfo.json | 2 +- dev/api/index.html | 32 ++++++++++++++++---------------- dev/index.html | 2 +- dev/license/index.html | 2 +- dev/notice/index.html | 2 +- dev/objects.inv | Bin 587 -> 587 bytes 6 files changed, 20 insertions(+), 20 deletions(-) diff --git a/dev/.documenter-siteinfo.json b/dev/.documenter-siteinfo.json index ef8e273..e3ccb59 100644 --- a/dev/.documenter-siteinfo.json +++ b/dev/.documenter-siteinfo.json @@ -1 +1 @@ -{"documenter":{"julia_version":"1.11.1","generation_timestamp":"2024-10-30T05:31:33","documenter_version":"1.7.0"}} \ No newline at end of file +{"documenter":{"julia_version":"1.11.1","generation_timestamp":"2024-10-30T18:21:25","documenter_version":"1.7.0"}} \ No newline at end of file diff --git a/dev/api/index.html b/dev/api/index.html index 499715a..300a0a0 100644 --- a/dev/api/index.html +++ b/dev/api/index.html @@ -3,11 +3,11 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-65D8V8C8VQ', {'page_path': location.pathname + location.search + location.hash}); -

API Reference

VacuumFields

Missing docstring.

Missing docstring for AbstractCircuit. Check Documenter's build log for details.

VacuumFields.DistributedCoilType
DistributedCoil{T1<:Real,T2<:Real,T3<:Real,T4<:Real} <: AbstractSingleCoil{T1,T2,T3,T4}

Coil consisting of distributed filaments

source
VacuumFields.FluxControlPointType
FluxControlPoint(R::Real, Z::Real, target::Real, weight::Real=1.0)

Return a control point for a target flux value at point (R, Z), with an optional weight

source
VacuumFields.FluxControlPointsFunction
FluxControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real}, ψtarget::Real)

Return a Vector of FluxControlPoint at each Rs and Zs point, each with the same ψtarget flux

source
FluxControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real}, ψtargets::AbstractVector{<:Real})

Return a Vector of FluxControlPoint at each Rs and Zs point with ψtargets flux

source
Missing docstring.

Missing docstring for GS_IMAS_pf_active__coil. Check Documenter's build log for details.

Missing docstring.

Missing docstring for IMAS_pf_active__coils. Check Documenter's build log for details.

VacuumFields.IsoControlPointType
IsoControlPoint(R::Real, Z::Real,weight::Real=1.0)

Return a control point for equal flux between points (R1, Z1) and (R2, Z2), with an optional weight

source
VacuumFields.IsoControlPointsFunction
IsoControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real})

Return a Vector of IsoControlPoints between each pair of Rs and Zs points

source
Missing docstring.

Missing docstring for MultiCoil. Check Documenter's build log for details.

VacuumFields.ParallelogramCoilType
ParallelogramCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Parallelogram coil with the R, Z, ΔR, ΔZ, θ1, θ2 formalism (as used by EFIT, for example). Here θ1 and θ2 are the shear angles along the x- and y-axes, respectively, in degrees.

source
VacuumFields.PointCoilType
PointCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Point filament coil at scalar (R, Z) location

source
VacuumFields.QuadCoilType
QuadCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Quadrilateral coil with counter-clockwise corners (starting from lower left) at R and Z

source
VacuumFields.SaddleControlPointType
SaddleControlPoint(R::Real, Z::Real,weight::Real=1.0)

Return a control point for a saddle (i.e., dψ/dR = dψ/dZ = 0.0) at point (R, Z), with an optional weight

source
Missing docstring.

Missing docstring for SeriesCircuit. Check Documenter's build log for details.

VacuumFields.boundary_control_pointsFunction
boundary_control_points(EQfixed::MXHEquilibrium.AbstractEquilibrium, fraction_inside::Float64=0.999, ψbound::Real=0.0; Npts::Integer=99)

Return a Vector of FluxControlPoint, each with target ψbound, at Npts equally distributed fraction_inside percent inside the the boundary of EQfixed

source
boundary_control_points(EQfixed::MXHEquilibrium.AbstractEquilibrium, fraction_inside::Float64=0.999, ψbound::Real=0.0; Npts::Integer=99)

Return a Vector of FluxControlPoint, each with target ψbound, at Npts equally distributed fraction_inside percent inside the the boundary of shot

source
VacuumFields.d2M_dZ2Function
d2M_dZ2(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
-      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the second Z derivative of the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
d2M_dZ2(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
-      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the second Z derivative of the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.dM_dZFunction
dM_dZ(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
-      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the Z derivative of the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
dM_dZ(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
-      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the Z derivative of the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.encircling_coilsFunction
encircling_coils(EQfixed::MXHEquilibrium.AbstractEquilibrium, n_coils::Int)

Return a Vector of n_coils PointCoils distributed outside of EQfixed's boundary

source
encircling_coils(shot::TEQUILA.Shot, n_coils::Int)

Return a Vector of n_coils PointCoils distributed outside of shot's boundary

source
encircling_coils(bnd_r::AbstractVector{T}, bnd_z::AbstractVector{T}, n_coils::Int) where {T<:Real}

Return a Vector of n_coils PointCoils distributed outside of closed boundary defined by bnd_r and bnd_z

source
VacuumFields.find_coil_currents!Function
find_coil_currents!(
+        
         
 

API Reference

VacuumFields

Missing docstring.

Missing docstring for AbstractCircuit. Check Documenter's build log for details.

VacuumFields.DistributedCoilType
DistributedCoil{T1<:Real,T2<:Real,T3<:Real,T4<:Real} <: AbstractSingleCoil{T1,T2,T3,T4}

Coil consisting of distributed filaments

source
VacuumFields.FluxControlPointType
FluxControlPoint(R::Real, Z::Real, target::Real, weight::Real=1.0)

Return a control point for a target flux value at point (R, Z), with an optional weight

source
VacuumFields.FluxControlPointsFunction
FluxControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real}, ψtarget::Real)

Return a Vector of FluxControlPoint at each Rs and Zs point, each with the same ψtarget flux

source
FluxControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real}, ψtargets::AbstractVector{<:Real})

Return a Vector of FluxControlPoint at each Rs and Zs point with ψtargets flux

source
Missing docstring.

Missing docstring for GS_IMAS_pf_active__coil. Check Documenter's build log for details.

Missing docstring.

Missing docstring for IMAS_pf_active__coils. Check Documenter's build log for details.

VacuumFields.IsoControlPointType
IsoControlPoint(R::Real, Z::Real,weight::Real=1.0)

Return a control point for equal flux between points (R1, Z1) and (R2, Z2), with an optional weight

source
VacuumFields.IsoControlPointsFunction
IsoControlPoints(Rs::AbstractVector{<:Real}, Zs::AbstractVector{<:Real})

Return a Vector of IsoControlPoints between each pair of Rs and Zs points

source
Missing docstring.

Missing docstring for MultiCoil. Check Documenter's build log for details.

VacuumFields.ParallelogramCoilType
ParallelogramCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Parallelogram coil with the R, Z, ΔR, ΔZ, θ1, θ2 formalism (as used by EFIT, for example). Here θ1 and θ2 are the shear angles along the x- and y-axes, respectively, in degrees.

source
VacuumFields.PointCoilType
PointCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Point filament coil at scalar (R, Z) location

source
VacuumFields.QuadCoilType
QuadCoil{T1, T2, T3, T4} <:  AbstractSingleCoil{T1, T2, T3, T4}

Quadrilateral coil with counter-clockwise corners (starting from lower left) at R and Z

source
VacuumFields.SaddleControlPointType
SaddleControlPoint(R::Real, Z::Real,weight::Real=1.0)

Return a control point for a saddle (i.e., dψ/dR = dψ/dZ = 0.0) at point (R, Z), with an optional weight

source
Missing docstring.

Missing docstring for SeriesCircuit. Check Documenter's build log for details.

VacuumFields.boundary_control_pointsFunction
boundary_control_points(EQfixed::MXHEquilibrium.AbstractEquilibrium, fraction_inside::Float64=0.999, ψbound::Real=0.0; Npts::Integer=99)

Return a Vector of FluxControlPoint, each with target ψbound, at Npts equally distributed fraction_inside percent inside the the boundary of EQfixed

source
boundary_control_points(EQfixed::MXHEquilibrium.AbstractEquilibrium, fraction_inside::Float64=0.999, ψbound::Real=0.0; Npts::Integer=99)

Return a Vector of FluxControlPoint, each with target ψbound, at Npts equally distributed fraction_inside percent inside the the boundary of shot

source
VacuumFields.d2M_dZ2Function
d2M_dZ2(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
+      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the second Z derivative of the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
d2M_dZ2(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
+      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the second Z derivative of the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.dM_dZFunction
dM_dZ(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
+      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the Z derivative of the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
dM_dZ(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
+      COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the Z derivative of the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.encircling_coilsFunction
encircling_coils(EQfixed::MXHEquilibrium.AbstractEquilibrium, n_coils::Int)

Return a Vector of n_coils PointCoils distributed outside of EQfixed's boundary

source
encircling_coils(shot::TEQUILA.Shot, n_coils::Int)

Return a Vector of n_coils PointCoils distributed outside of shot's boundary

source
encircling_coils(bnd_r::AbstractVector{T}, bnd_z::AbstractVector{T}, n_coils::Int) where {T<:Real}

Return a Vector of n_coils PointCoils distributed outside of closed boundary defined by bnd_r and bnd_z

source
VacuumFields.find_coil_currents!Function
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil},
     EQ::MXHEquilibrium.AbstractEquilibrium;
     flux_cps::Vector{<:FluxControlPoint}=FluxControlPoint{Float64}[],
@@ -16,7 +16,7 @@
     ψbound::Real=0.0,
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
-    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (least-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
+    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (least-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil},
     EQ::MXHEquilibrium.AbstractEquilibrium,
     image::Image;
@@ -26,7 +26,7 @@
     ψbound::Real=0.0,
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
-    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with image currents image and a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
+    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with image currents image and a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil},
     EQ::MXHEquilibrium.AbstractEquilibrium,
     image::Image;
@@ -36,7 +36,7 @@
     ψbound::Real=0.0,
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
-    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with image currents image and a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
+    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Assumes flux from plasma current given by equilibrium EQ with image currents image and a ψbound flux at the boundary Sb

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil},
     EQ::Nothing;
     flux_cps::Vector{<:FluxControlPoint}=FluxControlPoint{Float64}[],
@@ -46,7 +46,7 @@
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
     cocos=MXHEquilibrium.cocos(11),
-    Sb=nothing)

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
+    Sb=nothing)

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil},
     EQ::Nothing, # VACUUM case
     image::Nothing;
@@ -57,20 +57,20 @@
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
     cocos=MXHEquilibrium.cocos(11),
-    Sb=nothing)

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
+    Sb=nothing)

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
find_coil_currents!(
     coils::AbstractVector{<:AbstractCoil};
     flux_cps::Vector{<:FluxControlPoint}=FluxControlPoint{Float64}[],
     saddle_cps::Vector{<:SaddleControlPoint}=SaddleControlPoint{Float64}[],
     iso_cps::Vector{<:IsoControlPoint}=IsoControlPoint{Float64}[],
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     λ_regularize::Float64=0.0,
-    cocos=MXHEquilibrium.cocos(11))

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
VacuumFields.fixed2freeFunction
fixed2free(
+    cocos=MXHEquilibrium.cocos(11))

Find the currents for coils that best match (leas-squares) the control points provided by flux_cps, saddle_cps, and iso_cps

Vacuume case: assumes no equilibrium plasma current

Optionally assumes flux from additional fixed_coils, whose currents will not change

λ_regularize provides regularization in the least-squares fitting

source
VacuumFields.fixed2freeFunction
fixed2free(
     EQfixed::MXHEquilibrium.AbstractEquilibrium,
     coils::AbstractVector{<:AbstractCoil},
     R::AbstractVector{T},
     Z::AbstractVector{T};
     ψbound::Real=0.0,
-    kwargs...) where {T<:Real}

Convert the flux of a fixed-boundary equilibrium EQfixed to a free-boundary representation on an (R,Z) grid, using the flux from coils with currents satisfying given control points

source
fixed2free(
+    kwargs...) where {T<:Real}

Convert the flux of a fixed-boundary equilibrium EQfixed to a free-boundary representation on an (R,Z) grid, using the flux from coils with currents satisfying given control points

source
fixed2free(
     EQfixed::MXHEquilibrium.AbstractEquilibrium,
     image::Image,
     coils::AbstractVector{<:AbstractCoil},
@@ -81,9 +81,9 @@
     iso_cps::Vector{<:IsoControlPoint}=IsoControlPoint{Float64}[],
     ψbound::Real=0.0,
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
-    λ_regularize::Real=0.0) where {T<:Real}

Convert the flux of a fixed-boundary equilibrium EQfixed to a free-boundary representation on an (R,Z) grid, subtracting out the flux from image currents image and adding in the flux from coils with currents that best satisfy the control points and fixed_coils with predefined coil currents

source
VacuumFields.mutualFunction
mutual(C1::Union{AbstractCoil, IMASelement}, C2::PointCoil)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a PointCoil

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::DistributedCoil)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a DistributedCoil

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::Union{ParallelogramCoil, QuadCoil, IMASelement}; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a ParallelogramCoil, QuadCoil, or IMAS.pf_active__coil___element

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::IMAScoil; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a IMAS.pf_active__coil

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(C1::IMAScoil, C2::Union{AbstractCoil, IMAScoil, IMASelement}; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an IMAS.pf_active__coil and an arbitrary coil, IMAS.pf_active__coil___element, or a IMAS.pf_active__coil

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
-    COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
mutual(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
-       COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(11), kwargs...)

Compute the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.normalized_growth_rateFunction
normalized_growth_rate(EQ::MXHEquilibrium.AbstractEquilibrium, coils::Vector{<:Union{AbstractCoil, IMAScoil}}; kwargs...)

Compute the vertical growth rate (γ) and effective vertical time constant (τ, weighted L/R time) for a given equilibrium and coils

Return (γ, τ, γ * τ), where γ * τ < 10 for stability or controllability

This is the massless approximation and only use the passive conductors for computing τ (per advice from Olofsson)

source
normalized_growth_rate(image::Image, coils::Vector{<:Union{AbstractCoil, IMAScoil}}, Ip::Real; order::Int=default_order)

Compute the vertical growth rate (γ) and effective vertical time constant (τ, weighted L/R time), for a given equilibrium's image & plasma current and coils

Return (γ, τ, γ * τ), where γ * τ < 10 for stability or controllability

This is the massless approximation and only use the passive conductors for computing τ (per advice from Olofsson)

source
VacuumFields.optimal_λ_regularizeFunction
optimal_λ_regularize(
+    λ_regularize::Real=0.0) where {T<:Real}

Convert the flux of a fixed-boundary equilibrium EQfixed to a free-boundary representation on an (R,Z) grid, subtracting out the flux from image currents image and adding in the flux from coils with currents that best satisfy the control points and fixed_coils with predefined coil currents

source
VacuumFields.mutualFunction
mutual(C1::Union{AbstractCoil, IMASelement}, C2::PointCoil)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a PointCoil

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::DistributedCoil)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a DistributedCoil

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::Union{ParallelogramCoil, QuadCoil, IMASelement}; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a ParallelogramCoil, QuadCoil, or IMAS.pf_active__coil___element

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(C1::Union{AbstractCoil, IMASelement}, C2::IMAScoil; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an arbitrary coil or IMAS.pf_active__coil___element and a IMAS.pf_active__coil

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(C1::IMAScoil, C2::Union{AbstractCoil, IMAScoil, IMASelement}; xorder::Int=3, yorder::Int=3)

Compute the mutual inductance between an IMAS.pf_active__coil and an arbitrary coil, IMAS.pf_active__coil___element, or a IMAS.pf_active__coil

xorder and yorder give the order of Gauss-Legendre quadrature for integration over the coil area

source
mutual(EQ::MXHEquilibrium.AbstractEquilibrium, C::Union{AbstractCoil, IMAScoil}, δZ::Real=0.0;
+    COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(EQ), kwargs...)

Compute the mutual inductance between an equilibrium and a coil, where the equilibrium is shifted vertically by δZ

source
mutual(image::Image, C::Union{AbstractCoil, IMAScoil}, Ip::Real, δZ::Real=0.0;
+       COCOS::MXHEquilibrium.COCOS=MXHEquilibrium.cocos(11), kwargs...)

Compute the mutual inductance between an equilibrium's image current and a coil, where the equilibrium is shifted vertically by δZ

source
VacuumFields.normalized_growth_rateFunction
normalized_growth_rate(EQ::MXHEquilibrium.AbstractEquilibrium, coils::Vector{<:Union{AbstractCoil, IMAScoil}}; kwargs...)

Compute the vertical growth rate (γ) and effective vertical time constant (τ, weighted L/R time) for a given equilibrium and coils

Return (γ, τ, γ * τ), where γ * τ < 10 for stability or controllability

This is the massless approximation and only use the passive conductors for computing τ (per advice from Olofsson)

source
normalized_growth_rate(image::Image, coils::Vector{<:Union{AbstractCoil, IMAScoil}}, Ip::Real; order::Int=default_order)

Compute the vertical growth rate (γ) and effective vertical time constant (τ, weighted L/R time), for a given equilibrium's image & plasma current and coils

Return (γ, τ, γ * τ), where γ * τ < 10 for stability or controllability

This is the massless approximation and only use the passive conductors for computing τ (per advice from Olofsson)

source
VacuumFields.optimal_λ_regularizeFunction
optimal_λ_regularize(
     coils::AbstractVector{<:AbstractCoil},
     EQ::MXHEquilibrium.AbstractEquilibrium,
     image::Image;
@@ -93,4 +93,4 @@
     ψbound::Real=0.0,
     fixed_coils::AbstractVector{<:AbstractCoil}=PointCoil{Float64,Float64}[],
     min_exp::Integer=-20, max_exp::Integer=-10,
-    Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the optimizal λ_regularize to be used within find_coil_currents! that minimizes the cost

source
VacuumFields.stability_marginFunction
stability_margin(EQ::MXHEquilibrium.AbstractEquilibrium, coils::Vector{<:Union{AbstractCoil, IMAScoil}}; kwargs...)

Compute the m_s inductive stability margin for a given equilibrium and coils. Should be greater than 0.15 for vertical stability

First introduced in A. Portone, Nucl. Fusion 45 (2005) 926–932. https://doi.org/10.1088/0029-5515/45/8/021

source
stability_margin(image::Image, coils::Vector{<:Union{AbstractCoil, IMAScoil}}, Ip::Real; order::Int=default_order)

Compute the m_s inductive stability margin for a given equilibrium's image & plasma current and coils. Should be greater than 0.15 for vertical stability

First introduced in A. Portone, Nucl. Fusion 45 (2005) 926–932. https://doi.org/10.1088/0029-5515/45/8/021

source
Missing docstring.

Missing docstring for update_coil_currents!. Check Documenter's build log for details.

+ Sb::MXHEquilibrium.Boundary=plasma_boundary_psi_w_fallback(EQ)[1])

Find the optimizal λ_regularize to be used within find_coil_currents! that minimizes the cost

source
VacuumFields.stability_marginFunction
stability_margin(EQ::MXHEquilibrium.AbstractEquilibrium, coils::Vector{<:Union{AbstractCoil, IMAScoil}}; kwargs...)

Compute the m_s inductive stability margin for a given equilibrium and coils. Should be greater than 0.15 for vertical stability

First introduced in A. Portone, Nucl. Fusion 45 (2005) 926–932. https://doi.org/10.1088/0029-5515/45/8/021

source
stability_margin(image::Image, coils::Vector{<:Union{AbstractCoil, IMAScoil}}, Ip::Real; order::Int=default_order)

Compute the m_s inductive stability margin for a given equilibrium's image & plasma current and coils. Should be greater than 0.15 for vertical stability

First introduced in A. Portone, Nucl. Fusion 45 (2005) 926–932. https://doi.org/10.1088/0029-5515/45/8/021

source
Missing docstring.

Missing docstring for update_coil_currents!. Check Documenter's build log for details.

diff --git a/dev/index.html b/dev/index.html index 614596b..417611e 100644 --- a/dev/index.html +++ b/dev/index.html @@ -3,4 +3,4 @@ function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-65D8V8C8VQ', {'page_path': location.pathname + location.search + location.hash}); -

VacuumFields.jl

Closed-boundary solvers do not provide a poloidal field solution in the vacuum region, outside of the last closed flux surface. VacuumFields.jl uses the Green’s function method to match the plasma current contribution with the contributions of external poloidal field coils at the last closed flux surface to determine the homogeneous solution. The total solution is then extended into the vacuum region to get a realistic vacuum solution.

Online documentation

For more details, see the online documentation.

Docs

+

VacuumFields.jl

Closed-boundary solvers do not provide a poloidal field solution in the vacuum region, outside of the last closed flux surface. VacuumFields.jl uses the Green’s function method to match the plasma current contribution with the contributions of external poloidal field coils at the last closed flux surface to determine the homogeneous solution. The total solution is then extended into the vacuum region to get a realistic vacuum solution.

Online documentation

For more details, see the online documentation.

Docs

diff --git a/dev/license/index.html b/dev/license/index.html index cfaac71..84db4a6 100644 --- a/dev/license/index.html +++ b/dev/license/index.html @@ -12,4 +12,4 @@ comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier - identification within third-party archives.

Copyright 2024 General Atomics

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

+ identification within third-party archives.

Copyright 2024 General Atomics

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

diff --git a/dev/notice/index.html b/dev/notice/index.html index d764069..eb8e44f 100644 --- a/dev/notice/index.html +++ b/dev/notice/index.html @@ -9,4 +9,4 @@ journal = {arXiv}, title = {{FUSE (Fusion Synthesis Engine): A Next Generation Framework for Integrated Design of Fusion Pilot Plants}}, year = {2024} -}

Trademark Notice

The names "General Atomics", and any associated logos or images, are trademarks of General Atomics. Use of these trademarks without prior written consent from General Atomics is strictly prohibited. Users cannot imply endorsement by General Atomics or contributors to the project simply because the project is part of their work.

Copyright (c) 2024 General Atomics

Version

Version: v2.1

+}

Trademark Notice

The names "General Atomics", and any associated logos or images, are trademarks of General Atomics. Use of these trademarks without prior written consent from General Atomics is strictly prohibited. Users cannot imply endorsement by General Atomics or contributors to the project simply because the project is part of their work.

Copyright (c) 2024 General Atomics

Version

Version: v2.1

diff --git a/dev/objects.inv b/dev/objects.inv index 13e4b8adca6b04882228196758f81b5b5c9c56ee..ba546953995fdc62ec2437878b89a8d86d71fb08 100644 GIT binary patch delta 12 TcmX@ja++m=6Qk)yXAUL+9LfWw delta 12 TcmX@ja++m=6QjvSXAUL+9K{2q