Stability | experimental |
---|---|
Maintainer | Scott N. Walck <walck@lvc.edu> |
Safe Haskell | Trustworthy |
This module contains functions for working with current, magnetic field, and magnetic flux.
- type Current = Double
- data CurrentDistribution
- bField :: CurrentDistribution -> VectorField
- bFieldFromLineCurrent :: Current -> Curve -> VectorField
- bFieldFromSurfaceCurrent :: VectorField -> Surface -> VectorField
- bFieldFromVolumeCurrent :: VectorField -> Volume -> VectorField
- magneticFlux :: Surface -> CurrentDistribution -> Double
Current
data CurrentDistribution Source
A current distribution is a line current (current through a wire), a surface current,
a volume current, or a combination of these.
The VectorField
describes a surface current density
or a volume current density.
LineCurrent Current Curve | current through a wire |
SurfaceCurrent VectorField Surface |
|
VolumeCurrent VectorField Volume |
|
MultipleCurrents [CurrentDistribution] | combination of current distributions |
Magnetic Field
bField :: CurrentDistribution -> VectorFieldSource
The magnetic field produced by a current distribution. This is the simplest way to find the magnetic field, because it works for any current distribution (line, surface, volume, or combination).
:: Current | current (in Amps) |
-> Curve | geometry of the line current |
-> VectorField | magnetic field (in Tesla) |
Magnetic field produced by a line current (current through a wire).
The function bField
calls this function
to evaluate the magnetic field produced by a line current.
bFieldFromSurfaceCurrentSource
:: VectorField | surface current density |
-> Surface | geometry of the surface current |
-> VectorField | magnetic field (in T) |
Magnetic field produced by a surface current.
The function bField
calls this function
to evaluate the magnetic field produced by a surface current.
This function assumes that surface current density
will be specified parallel to the surface, and does
not check if that is true.
:: VectorField | volume current density |
-> Volume | geometry of the volume current |
-> VectorField | magnetic field (in T) |
Magnetic field produced by a volume current.
The function bField
calls this function
to evaluate the magnetic field produced by a volume current.
Magnetic Flux
magneticFlux :: Surface -> CurrentDistribution -> DoubleSource
The magnetic flux through a surface produced by a current distribution.