Stability | experimental |
---|---|

Maintainer | Scott N. Walck <walck@lvc.edu> |

Safe Haskell | Trustworthy |

- data Volume = Volume {}
- unitBall :: Volume
- unitBallCartesian :: Volume
- centeredBall :: Double -> Volume
- ball :: Double -> Position -> Volume
- northernHalfBall :: Volume
- centeredCylinder :: Double -> Double -> Volume
- shiftVolume :: Displacement -> Volume -> Volume
- volumeIntegral :: (VectorSpace v, Scalar v ~ Double) => Int -> Int -> Int -> Field v -> Volume -> v

# Volumes

Volume is a parametrized function from three parameters to space, lower and upper limits on the first parameter, lower and upper limits for the second parameter (expressed as functions of the first parameter), and lower and upper limits for the third parameter (expressed as functions of the first and second parameters).

unitBallCartesian :: VolumeSource

A unit ball, centered at the origin. Specified in Cartesian coordinates.

centeredBall :: Double -> VolumeSource

A ball with given radius, centered at the origin.

Ball with given radius and center.

northernHalfBall :: VolumeSource

Upper half ball, unit radius, centered at origin.

centeredCylinder :: Double -> Double -> VolumeSource

Cylinder with given radius and height. Circular base of the cylinder is centered at the origin. Circular top of the cylinder lies in plane z = h.

shiftVolume :: Displacement -> Volume -> VolumeSource

Shift a volume by a displacement.