module Drasil.PDController.Unitals where
import Data.Drasil.Constraints (gtZeroConstr)
import Data.Drasil.SI_Units (second)
import Language.Drasil
import Language.Drasil.Chunk.Concept.NamedCombinators
import Drasil.PDController.Concepts
import Control.Lens ((^.))
syms, symFS, symFt, syminvLaplace, symKd, symKp,
symYT, symYS, symYrT, symYrS, symET, symES, symPS, symDS, symHS,
symCT, symCS, symTStep, symTSim, symAbsTol, symRelTol,
symDampingCoeff, symStifnessCoeff :: Symbol
symFS :: Symbol
symFS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"F") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
syminvLaplace :: Symbol
syminvLaplace = String -> Symbol
variable String
"L⁻¹[F(s)]"
syms :: Symbol
syms = String -> Symbol
variable String
"s"
symFt :: Symbol
symFt = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"f") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"t"
symKd :: Symbol
symKd = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"K") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"d"
symKp :: Symbol
symKp = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"K") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"p"
symYrT :: Symbol
symYrT = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"r") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"t"
symYrS :: Symbol
symYrS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"R") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symYT :: Symbol
symYT = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"y") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"t"
symYS :: Symbol
symYS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"Y") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symET :: Symbol
symET = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"e") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"t"
symES :: Symbol
symES = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"E") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symPS :: Symbol
symPS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"P") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symDS :: Symbol
symDS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"D") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symHS :: Symbol
symHS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"H") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symCT :: Symbol
symCT = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"c") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"t"
symCS :: Symbol
symCS = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"C") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"s"
symTStep :: Symbol
symTStep = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"t") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"step"
symTSim :: Symbol
symTSim = Symbol -> Symbol -> Symbol
sub (String -> Symbol
variable String
"t") (Symbol -> Symbol) -> Symbol -> Symbol
forall a b. (a -> b) -> a -> b
$ String -> Symbol
label String
"sim"
symAbsTol :: Symbol
symAbsTol = String -> Symbol
variable String
"AbsTol"
symRelTol :: Symbol
symRelTol = String -> Symbol
variable String
"RelTol"
symDampingCoeff :: Symbol
symDampingCoeff = String -> Symbol
variable String
"c"
symStifnessCoeff :: Symbol
symStifnessCoeff = String -> Symbol
variable String
"k"
symbols :: [DefinedQuantityDict]
symbols :: [DefinedQuantityDict]
symbols
= [DefinedQuantityDict
dqdLaplaceTransform, DefinedQuantityDict
dqdFreqDomain, DefinedQuantityDict
dqdFxnTDomain,
DefinedQuantityDict
dqdInvLaplaceTransform, DefinedQuantityDict
dqdPropGain, DefinedQuantityDict
dqdDerivGain, DefinedQuantityDict
dqdSetPointTD, DefinedQuantityDict
dqdSetPointFD,
DefinedQuantityDict
dqdProcessVariableTD, DefinedQuantityDict
dqdProcessVariableFD, DefinedQuantityDict
dqdProcessErrorTD,
DefinedQuantityDict
dqdProcessErrorFD, DefinedQuantityDict
dqdDerivativeControlFD, DefinedQuantityDict
dqdPropControlFD,
DefinedQuantityDict
dqdTransferFunctionFD, DefinedQuantityDict
dqdCtrlVarTD, DefinedQuantityDict
dqdCtrlVarFD, DefinedQuantityDict
dqdStepTime, DefinedQuantityDict
dqdSimTime,
DefinedQuantityDict
dqdDampingCoeff, DefinedQuantityDict
dqdStiffnessCoeff]
dqdLaplaceTransform, dqdFreqDomain, dqdFxnTDomain,
dqdInvLaplaceTransform, dqdPropGain, dqdDerivGain,
dqdSetPointTD, dqdSetPointFD, dqdProcessVariableTD,
dqdProcessVariableFD, dqdProcessErrorTD, dqdProcessErrorFD,
dqdPropControlFD, dqdDerivativeControlFD,
dqdTransferFunctionFD, dqdCtrlVarFD, dqdCtrlVarTD, dqdStepTime,
dqdSimTime, dqdDampingCoeff, dqdStiffnessCoeff, dqdAbsTol, dqdRelTol :: DefinedQuantityDict
inputs :: [DefinedQuantityDict]
inputs :: [DefinedQuantityDict]
inputs = [DefinedQuantityDict
dqdSetPointTD, DefinedQuantityDict
dqdDerivGain, DefinedQuantityDict
dqdPropGain, DefinedQuantityDict
dqdStepTime, DefinedQuantityDict
dqdSimTime]
outputs :: [DefinedQuantityDict]
outputs :: [DefinedQuantityDict]
outputs = [DefinedQuantityDict
dqdProcessVariableTD]
inputsUC :: [UncertQ]
inputsUC :: [UncertQ]
inputsUC
= [UncertQ
ipSetPtUnc, UncertQ
ipPropGainUnc, UncertQ
ipDerGainUnc, UncertQ
ipStepTimeUnc, UncertQ
ipSimTimeUnc]
inpConstrained :: [ConstrConcept]
inpConstrained :: [ConstrConcept]
inpConstrained
= [ConstrConcept
ipPropGain, ConstrConcept
ipDerivGain, ConstrConcept
ipSetPt, ConstrConcept
ipStepTime, ConstrConcept
ipSimTime, ConstrConcept
opProcessVariable]
ipPropGain, ipDerivGain, ipSetPt, ipStepTime, ipSimTime, opProcessVariable ::
ConstrConcept
ipSetPtUnc, ipPropGainUnc, ipDerGainUnc, ipStepTimeUnc, ipSimTimeUnc :: UncertQ
ipPropGain :: ConstrConcept
ipPropGain
= DefinedQuantityDict -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
propGain Symbol
symKp Space
Real) [ConstraintE
gtZeroConstr] (Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
20)
ipPropGainUnc :: UncertQ
ipPropGainUnc = ConstrConcept -> Uncertainty -> UncertQ
forall c.
(Quantity c, Constrained c, Concept c, HasReasVal c,
MayHaveUnit c) =>
c -> Uncertainty -> UncertQ
uq ConstrConcept
ipPropGain Uncertainty
defaultUncrt
dqdPropGain :: DefinedQuantityDict
dqdPropGain = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
ipPropGain
ipDerivGain :: ConstrConcept
ipDerivGain
= DefinedQuantityDict -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
derGain Symbol
symKd Space
Real) [RealInterval Expr Expr -> ConstraintE
physRange (RealInterval Expr Expr -> ConstraintE)
-> RealInterval Expr Expr -> ConstraintE
forall a b. (a -> b) -> a -> b
$ (Inclusive, Expr) -> RealInterval Expr Expr
forall b a. (Inclusive, b) -> RealInterval a b
UpFrom (Inclusive
Inc, Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
0)]
(Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
1)
ipDerGainUnc :: UncertQ
ipDerGainUnc = ConstrConcept -> Uncertainty -> UncertQ
forall c.
(Quantity c, Constrained c, Concept c, HasReasVal c,
MayHaveUnit c) =>
c -> Uncertainty -> UncertQ
uq ConstrConcept
ipDerivGain Uncertainty
defaultUncrt
dqdDerivGain :: DefinedQuantityDict
dqdDerivGain = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
ipDerivGain
ipSetPt :: ConstrConcept
ipSetPt = DefinedQuantityDict -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
setPoint Symbol
symYrT Space
Real) [ConstraintE
gtZeroConstr] (Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
1)
ipSetPtUnc :: UncertQ
ipSetPtUnc = ConstrConcept -> Uncertainty -> UncertQ
forall c.
(Quantity c, Constrained c, Concept c, HasReasVal c,
MayHaveUnit c) =>
c -> Uncertainty -> UncertQ
uq ConstrConcept
ipSetPt Uncertainty
defaultUncrt
dqdSetPointTD :: DefinedQuantityDict
dqdSetPointTD = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
ipSetPt
ipStepTime :: ConstrConcept
ipStepTime = UnitalChunk -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> UnitDefn -> UnitalChunk
forall c u.
(Concept c, IsUnit u) =>
c -> Symbol -> Space -> u -> UnitalChunk
uc ConceptChunk
stepTime Symbol
symTStep Space
Real UnitDefn
second)
[RealInterval Expr Expr -> ConstraintE
physRange (RealInterval Expr Expr -> ConstraintE)
-> RealInterval Expr Expr -> ConstraintE
forall a b. (a -> b) -> a -> b
$ (Inclusive, Expr) -> (Inclusive, Expr) -> RealInterval Expr Expr
forall a b. (Inclusive, a) -> (Inclusive, b) -> RealInterval a b
Bounded (Inclusive
Inc, Integer -> Integer -> Expr
forall r. (ExprC r, LiteralC r) => Integer -> Integer -> r
frac Integer
1 Integer
1000) (Inclusive
Exc, ConstrConcept -> Expr
forall c. (HasUID c, HasSymbol c) => c -> Expr
forall r c. (ExprC r, HasUID c, HasSymbol c) => c -> r
sy ConstrConcept
ipSimTime)]
(Double -> Expr
forall r. LiteralC r => Double -> r
dbl Double
0.001)
ipStepTimeUnc :: UncertQ
ipStepTimeUnc = ConstrConcept -> Uncertainty -> UncertQ
forall c.
(Quantity c, Constrained c, Concept c, HasReasVal c,
MayHaveUnit c) =>
c -> Uncertainty -> UncertQ
uq ConstrConcept
ipStepTime Uncertainty
defaultUncrt
dqdStepTime :: DefinedQuantityDict
dqdStepTime = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
ipStepTime
ipSimTime :: ConstrConcept
ipSimTime
= UnitalChunk -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> UnitDefn -> UnitalChunk
forall c u.
(Concept c, IsUnit u) =>
c -> Symbol -> Space -> u -> UnitalChunk
uc ConceptChunk
simulationTime Symbol
symTSim Space
Real UnitDefn
second)
[RealInterval Expr Expr -> ConstraintE
physRange (RealInterval Expr Expr -> ConstraintE)
-> RealInterval Expr Expr -> ConstraintE
forall a b. (a -> b) -> a -> b
$ (Inclusive, Expr) -> (Inclusive, Expr) -> RealInterval Expr Expr
forall a b. (Inclusive, a) -> (Inclusive, b) -> RealInterval a b
Bounded (Inclusive
Inc, Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
1) (Inclusive
Inc, Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
60)]
(Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
10)
ipSimTimeUnc :: UncertQ
ipSimTimeUnc = ConstrConcept -> Uncertainty -> UncertQ
forall c.
(Quantity c, Constrained c, Concept c, HasReasVal c,
MayHaveUnit c) =>
c -> Uncertainty -> UncertQ
uq ConstrConcept
ipSimTime Uncertainty
defaultUncrt
dqdSimTime :: DefinedQuantityDict
dqdSimTime = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
ipSimTime
odeAbsTolConst, odeRelTolConst :: ConstQDef
pidConstants :: [ConstQDef]
pidConstants :: [ConstQDef]
pidConstants = [ConstQDef
odeAbsTolConst, ConstQDef
odeRelTolConst]
pidDqdConstants :: [DefinedQuantityDict]
pidDqdConstants :: [DefinedQuantityDict]
pidDqdConstants = [DefinedQuantityDict
dqdAbsTol, DefinedQuantityDict
dqdRelTol]
dqdAbsTol :: DefinedQuantityDict
dqdAbsTol = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
ccAbsTolerance Symbol
symAbsTol Space
Real
dqdRelTol :: DefinedQuantityDict
dqdRelTol = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
ccRelTolerance Symbol
symRelTol Space
Real
odeAbsTolConst :: ConstQDef
odeAbsTolConst = DefinedQuantityDict -> Literal -> ConstQDef
forall c e.
(Quantity c, MayHaveUnit c, Concept c) =>
c -> e -> QDefinition e
mkQuantDef DefinedQuantityDict
dqdAbsTol (Double -> Literal
forall r. LiteralC r => Double -> r
dbl Double
1.0e-10)
odeRelTolConst :: ConstQDef
odeRelTolConst = DefinedQuantityDict -> Literal -> ConstQDef
forall c e.
(Quantity c, MayHaveUnit c, Concept c) =>
c -> e -> QDefinition e
mkQuantDef DefinedQuantityDict
dqdRelTol (Double -> Literal
forall r. LiteralC r => Double -> r
dbl Double
1.0e-10)
opProcessVariable :: ConstrConcept
opProcessVariable
= DefinedQuantityDict -> [ConstraintE] -> Expr -> ConstrConcept
forall c.
(Concept c, MayHaveUnit c, Quantity c) =>
c -> [ConstraintE] -> Expr -> ConstrConcept
constrained' (ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit ConceptChunk
processVariable Symbol
symYT (Space -> Space
Vect Space
Real))
[ConstraintE
gtZeroConstr]
(Integer -> Expr
forall r. LiteralC r => Integer -> r
exactDbl Integer
1)
dqdProcessVariableTD :: DefinedQuantityDict
dqdProcessVariableTD = ConstrConcept -> DefinedQuantityDict
forall c.
(Quantity c, Concept c, MayHaveUnit c) =>
c -> DefinedQuantityDict
dqdWr ConstrConcept
opProcessVariable
dqdSetPointFD :: DefinedQuantityDict
dqdSetPointFD
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdSetPointFD" (ConceptChunk
setPoint ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe` ConceptChunk
ccFrequencyDomain)
String
"the set point in the frequency domain") Symbol
symYrS Space
Real
dqdProcessVariableFD :: DefinedQuantityDict
dqdProcessVariableFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdProcessVariableFD"
(ConceptChunk
processVariable ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe` ConceptChunk
ccFrequencyDomain) String
"the process variable in the frequency domain") Symbol
symYS Space
Real
dqdProcessErrorTD :: DefinedQuantityDict
dqdProcessErrorTD
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdProcessErrorTD"
(Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Process Error in the time domain"))
String
"the process error in the time domain") Symbol
symET Space
Real
dqdProcessErrorFD :: DefinedQuantityDict
dqdProcessErrorFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdProcessErrorFD" (ConceptChunk
processError ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe`
ConceptChunk
ccFrequencyDomain) String
"the process error in the time domain") Symbol
symES Space
Real
dqdPropControlFD :: DefinedQuantityDict
dqdPropControlFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdPropControlFD" (ConceptChunk
propControl ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe`
ConceptChunk
ccFrequencyDomain) String
"the proportional control in the frequency domain") Symbol
symPS Space
Real
dqdDerivativeControlFD :: DefinedQuantityDict
dqdDerivativeControlFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdDerivativeControlFD" (ConceptChunk
derControl ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe`
ConceptChunk
ccFrequencyDomain) String
"the derivative control in the frequency domain") Symbol
symDS Space
Real
dqdTransferFunctionFD :: DefinedQuantityDict
dqdTransferFunctionFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdTransferFunctionFD" (ConceptChunk
ccTransferFxn ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe`
ConceptChunk
ccFrequencyDomain) String
"the transfer function ") Symbol
symHS Space
Real
dqdCtrlVarTD :: DefinedQuantityDict
dqdCtrlVarTD
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdCtrlVarTD" (Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Control Variable in the time domain"))
String
"the control variable in the time domain")
Symbol
symCT
Space
Real
dqdCtrlVarFD :: DefinedQuantityDict
dqdCtrlVarFD = ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdCtrlVarFD" (ConceptChunk
controlVariable ConceptChunk -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`inThe`
ConceptChunk
ccFrequencyDomain) String
"the control variable in the frequency domain") Symbol
symCS Space
Real
dqdLaplaceTransform :: DefinedQuantityDict
dqdLaplaceTransform
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdLaplaceTransform"
(Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Laplace Transform of a function"))
String
"the laplace transform of a function")
Symbol
symFS
Space
Real
dqdFreqDomain :: DefinedQuantityDict
dqdFreqDomain
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdFreqDomain" (Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Complex frequency-domain parameter"))
String
"the complex frequency-domain parameter")
Symbol
syms
Space
Real
dqdFxnTDomain :: DefinedQuantityDict
dqdFxnTDomain
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdFxnTDomain" (Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Function in the time domain"))
String
"a function in the time domain") Symbol
symFt
Space
Real
dqdInvLaplaceTransform :: DefinedQuantityDict
dqdInvLaplaceTransform
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdInvLaplaceTransform"
(Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Inverse Laplace Transform of a function"))
String
"the inverse Laplace transform of a function")
Symbol
syminvLaplace
Space
Real
dqdDampingCoeff :: DefinedQuantityDict
dqdDampingCoeff
= ConceptChunk -> Symbol -> Space -> DefinedQuantityDict
dqdNoUnit (String -> NP -> String -> ConceptChunk
dcc String
"dqdDampingCoeff" (Sentence -> NP
nounPhraseSent (String -> Sentence
S String
"Damping coefficient of the spring"))
String
"the damping coefficient of the spring")
Symbol
symDampingCoeff
Space
Real
dqdStiffnessCoeff :: DefinedQuantityDict
dqdStiffnessCoeff
= ConceptChunk -> Symbol -> Space -> UnitDefn -> DefinedQuantityDict
forall u.
IsUnit u =>
ConceptChunk -> Symbol -> Space -> u -> DefinedQuantityDict
dqd (String -> NP -> Sentence -> ConceptChunk
dccWDS String
"dqdStiffnessCoeff" (ConceptChunk
ccStiffCoeff ConceptChunk -> Getting NP ConceptChunk NP -> NP
forall s a. s -> Getting a s a -> a
^. Getting NP ConceptChunk NP
forall c. NamedIdea c => Lens' c NP
Lens' ConceptChunk NP
term) (ConceptChunk
ccStiffCoeff ConceptChunk -> Getting Sentence ConceptChunk Sentence -> Sentence
forall s a. s -> Getting a s a -> a
^. Getting Sentence ConceptChunk Sentence
forall c. Definition c => Lens' c Sentence
Lens' ConceptChunk Sentence
defn))
Symbol
symStifnessCoeff
Space
Real
UnitDefn
second