Copyright | (c) Scott N. Walck 2023 |
---|---|
License | BSD3 (see LICENSE) |
Maintainer | Scott N. Walck <walck@lvc.edu> |
Stability | stable |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Code from chapter 25 of the book Learn Physics with Functional Programming
Documentation
eFieldFromPointCharge :: Charge -> Position -> VectorField Source #
eFieldIdealDipole :: Vec -> VectorField Source #
type VectorLineIntegral = VectorField -> Curve -> Vec Source #
vectorLineIntegral :: CurveApprox -> VectorField -> Curve -> Vec Source #
eFieldFromLineCharge :: ScalarField -> Curve -> VectorField Source #
type VectorSurfaceIntegral = VectorField -> Surface -> Vec Source #
vectorSurfaceIntegral :: SurfaceApprox -> VectorField -> Surface -> Vec Source #
type VectorVolumeIntegral = VectorField -> Volume -> Vec Source #
vectorVolumeIntegral :: VolumeApprox -> VectorField -> Volume -> Vec Source #
type ScalarLineIntegral = ScalarField -> Curve -> R Source #
scalarLineIntegral :: CurveApprox -> ScalarField -> Curve -> R Source #
type ScalarSurfaceIntegral = ScalarField -> Surface -> R Source #
scalarSurfaceIntegral :: SurfaceApprox -> ScalarField -> Surface -> R Source #
type ScalarVolumeIntegral = ScalarField -> Volume -> R Source #
scalarVolumeIntegral :: VolumeApprox -> ScalarField -> Volume -> R Source #
class AbstractVector a where Source #
sumG :: AbstractVector a => [a] -> a Source #
generalLineIntegral :: AbstractVector a => CurveApprox -> Field a -> Curve -> a Source #
dottedSurfaceIntegral :: SurfaceApprox -> VectorField -> Surface -> R Source #
electricFluxFromField :: VectorField -> Surface -> R Source #
electricFluxFromCharge :: ChargeDistribution -> Surface -> R Source #
surfaceArea :: Surface -> R Source #
dottedLineIntegral :: CurveApprox -> VectorField -> Curve -> R Source #