MPISphericalHarmonics
Documentation for MPISphericalHarmonics.
Base.:+Base.:-MPISphericalHarmonics.findFFPMPISphericalHarmonics.findFFP!MPISphericalHarmonics.getGradientMPISphericalHarmonics.getJacobianMPISphericalHarmonics.getOffsetMPISphericalHarmonics.loadMagneticFieldMeasurementDataMPISphericalHarmonics.loadMagneticFieldMeasurementDataV1MPISphericalHarmonics.loadMagneticFieldMeasurementDataV2MPISphericalHarmonics.magneticFieldMPISphericalHarmonics.shiftFFP!
MPISphericalHarmonics.findFFP! — Method
ffp = findFFP!(coeffsMF::MagneticFieldCoefficients)Find FFP and set it as coeffsMF.ffp.
MPISphericalHarmonics.findFFP — Method
findFFP(coeffsMF::MagneticFieldCoefficients;
vol::Union{Symbol, String, Volume} = xyz,
start::Union{Vector{Vector{Float64}},Vector{Float64}} = [[0.0;0.0;0.0]],
returnasmatrix::Bool=true)Description: Newton method to find the FFPs of the magnetic fields
Input:
coeffsMF- MagneticFieldCoefficients or Matrix{SphericalHarmonicCoefficients}
kwargs:
vol- provide the volume where the FFP search should be done
options: (MPISphericalHarmonics.xyz, MPISphericalHarmonics.xy, MPISphericalHarmonics.xz, MPISphericalHarmonics.yz)
default: xyzstart- start vector (important for 2D FFP search for the third coordinate)
default: [0; 0; 0]returnasmatrix- Boolean
true -> return FFPs as Matrix with size (3,#Patches) (default)
false -> return FFPs as Array of NLsolve.SolverResults with size #Patches
Output:
ffp- FFPs of the magnetic field
MPISphericalHarmonics.getGradient — Function
getGradient(mfc::MagneticFieldCoefficients, idx::AbstractUnitRange{Int64}=axes(mfc.coeffs,2))Get the gradient of the field described by mfc[idx].
MPISphericalHarmonics.getJacobian — Function
getJacobian(mfc::MagneticFieldCoefficients, idx::AbstractUnitRange{Int64}=axes(mfc.coeffs,2))Get the Jacobian matrix of the field described by mfc[idx].
MPISphericalHarmonics.getOffset — Function
getOffset(mfc::MagneticFieldCoefficients, idx::AbstractUnitRange{Int64}=axes(mfc.coeffs,2))Get the offset of the field described by mfc[idx].
MPISphericalHarmonics.loadMagneticFieldMeasurementData — Method
loadMagneticFieldMeasurementData(filename::String)Load magnetic field measurement data by choosing the correct function for the version of the file and return all required data.
MPISphericalHarmonics.loadMagneticFieldMeasurementDataV1 — Method
loadMagneticFieldMeasurementDataV1(filename::String)Load magnetic field measurement data from hdf5-file (version v1).
MPISphericalHarmonics.loadMagneticFieldMeasurementDataV2 — Method
loadMagneticFieldMeasurementDataV2(filename::String)Load magnetic field measurement data from hdf5-file (version v2).
MPISphericalHarmonics.magneticField — Method
magneticField(tDesign::SphericalTDesign, field::Union{AbstractArray{T,2},AbstractArray{T,3}};
L::Int=Int(tDesign.T/2),
calcSolid::Bool=true) where T <: RealDescription: Calculation of the spherical harmonic coefficients based on the measured t-design
Input:
tDesign- Measured t-design (type: SphericalTDesign)field- Measured field (size = (J,N,C)) with J <= 3
kwargs:
L- Order up to which the coeffs be calculated (default: t/2)calcSolid- Boolean (default: true)
false -> spherical coefficients
true -> solid coefficients
Output:
coeffs- spherical/solid coefficients, type: Array{SphericalHarmonicCoefficients}(3,C)
MPISphericalHarmonics.shiftFFP! — Method
shiftFFP!(coeffsMF::MagneticFieldCoefficients)Shift magnetic-field coefficients into FFP (and calculate it if not available).