learn-physics-0.6.2: 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 #

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 #

A unit ball, centered at the origin.

unitBallCartesian :: Volume #

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

centeredBall :: Double -> Volume #

A ball with given radius, centered at the origin.

ball #

Arguments

:: Double

radius

-> Position

center

-> Volume

ball with given radius and center

Ball with given radius and center.

northernHalfBall :: Volume #

Upper half ball, unit radius, centered at origin.

centeredCylinder :: Double -> Double -> Volume #

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 #

Shift a volume by a displacement.

Volume Integral

volumeIntegral #

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