atmos-dimensional (empty) → 0.1.0.0
raw patch · 4 files changed
+103/−0 lines, 4 filesdep +atmosdep +basedep +dimensionalsetup-changed
Dependencies added: atmos, base, dimensional, numtype
Files
- Atmosphere/Dimensional.hs +43/−0
- LICENSE +30/−0
- Setup.hs +2/−0
- atmos-dimensional.cabal +28/−0
+ Atmosphere/Dimensional.hs view
@@ -0,0 +1,43 @@+{-# OPTIONS_GHC -Wall #-}++module Atmosphere.Dimensional( atmosphere+ , atmosphere'+ , Atmos(..)+ ) where++import Atmosphere hiding (Atmos(..))++import qualified Prelude+import Numeric.Units.Dimensional.Prelude+import Numeric.NumType(Zero, Pos2, Neg1)++type DKinematicViscosity = Dim Pos2 Zero Neg1 Zero Zero Zero Zero+type KinematicViscosity = Quantity DKinematicViscosity++data Atmos a = Atmos { atmosTemperature :: ThermodynamicTemperature a+ , atmosPressure :: Pressure a+ , atmosDensity :: Density a+ , atmosSpeedOfSound :: Velocity a+ , atmosViscosity :: DynamicViscosity a+ , atmosKinematicViscosity :: KinematicViscosity a+ }++atmosphere :: (Floating a, Ord a) =>+ Length a ->+ (ThermodynamicTemperature a, Pressure a, Density a, Velocity a,+ DynamicViscosity a, KinematicViscosity a)+atmosphere alt = ( temp *~ kelvin+ , pressure *~ pascal+ , density *~ (kilo gram / (meter*meter*meter))+ , asound *~ (meter / second)+ , viscosity *~ (newton * second / (meter*meter))+ , kinematicViscosity *~ (meter*meter/second)+ )+ where+ (temp, pressure, density, asound, viscosity, kinematicViscosity) = siAtmosphere (alt /~ meter)+++atmosphere' :: (Floating a, Ord a) => Length a -> Atmos a+atmosphere' alt = Atmos temp pressure density asound visc kVisc+ where+ (temp, pressure, density, asound, visc, kVisc) = atmosphere alt
+ LICENSE view
@@ -0,0 +1,30 @@+Copyright (c) 2012, Greg Horn++All rights reserved.++Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met:++ * Redistributions of source code must retain the above copyright+ notice, this list of conditions and the following disclaimer.++ * Redistributions in binary form must reproduce the above+ copyright notice, this list of conditions and the following+ disclaimer in the documentation and/or other materials provided+ with the distribution.++ * Neither the name of Greg Horn nor the names of other+ contributors may be used to endorse or promote products derived+ from this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ atmos-dimensional.cabal view
@@ -0,0 +1,28 @@+name: atmos-dimensional+version: 0.1.0.0+synopsis: dimensional wrapper on atmos package+description: {+1976 US Standard Atmosphere with dimensions from dimensional package.+.+This is a thin wrapper on top of the atmos package.+}+license: BSD3+license-file: LICENSE+author: Greg Horn+maintainer: gregmainland@gmail.com+-- copyright: +category: Science+build-type: Simple+cabal-version: >=1.8++library+ exposed-modules: Atmosphere.Dimensional+ -- other-modules: + build-depends: base >= 4 && < 5,+ atmos >= 0.1 && < 0.2,+ dimensional >= 0.10 && < 0.11,+ numtype >= 1.0 && < 1.1++source-repository head+ type: git+ location: git://github.com/ghorn/atmosphere.git