learn-physics-0.6.4: Haskell code for learning physics

Copyright(c) Scott N. Walck 2012-2014
LicenseBSD3 (see LICENSE)
MaintainerScott N. Walck <walck@lvc.edu>
Stabilityexperimental
Safe HaskellTrustworthy
LanguageHaskell98

Physics.Learn.Volume

Contents

Description

This module contains functions for working with Volumes and volume integrals over Volumes.

Synopsis

Volumes

data Volume Source #

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).

Constructors

Volume 

Fields

unitBall :: Volume Source #

A unit ball, centered at the origin.

unitBallCartesian :: Volume Source #

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

centeredBall :: Double -> Volume Source #

A ball with given radius, centered at the origin.

ball Source #

Arguments

:: Double

radius

-> Position

center

-> Volume

ball with given radius and center

Ball with given radius and center.

northernHalfBall :: Volume Source #

Upper half ball, unit radius, centered at origin.

centeredCylinder :: Double -> Double -> Volume Source #

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 -> Volume Source #

Shift a volume by a displacement.

Volume Integral

volumeIntegral Source #

Arguments

:: (VectorSpace v, Scalar v ~ Double) 
=> Int

number of intervals for first parameter (s)

-> Int

number of intervals for second parameter (t)

-> Int

number of intervals for third parameter (u)

-> Field v

scalar or vector field

-> Volume

the volume

-> v

scalar or vector result

A volume integral