module Drasil.SWHS.Changes (likelyChgs, likeChgTCVOD, likeChgTCVOL,
likeChgTLH, unlikelyChgs) where
import Language.Drasil
import Language.Drasil.Chunk.Concept.NamedCombinators
import qualified Language.Drasil.Sentence.Combinators as S
import Data.Drasil.Concepts.Documentation (assumption, value, simulation,
model, likeChgDom, unlikeChgDom)
import Drasil.SWHS.Concepts (tank, phsChgMtrl, water)
import Drasil.SWHS.Unitals (tempInit, tempC, tempPCM)
import Drasil.SWHS.Assumptions (assumpTPCAV, assumpTHCCoT, assumpTHCCoL,
assumpCTNOD, assumpSITWP, assumpWAL, assumpPIT, assumpNIHGBWP, assumpNGSP)
import Drasil.SWHS.IMods (eBalanceOnWtr, eBalanceOnPCM, heatEInPCM)
import Data.Drasil.Concepts.Thermodynamics as CT (heat,
thermalConductor)
import Data.Drasil.Quantities.Physics (energy)
likelyChgs :: [ConceptInstance]
likelyChgs :: [ConceptInstance]
likelyChgs = [ConceptInstance
likeChgUTP, ConceptInstance
likeChgTCVOD, ConceptInstance
likeChgTCVOL, ConceptInstance
likeChgDT, ConceptInstance
likeChgDITPW,
ConceptInstance
likeChgTLH]
likeChgUTP, likeChgTCVOD, likeChgTCVOL, likeChgDT, likeChgDITPW,
likeChgTLH :: ConceptInstance
likeChgUTP :: ConceptInstance
likeChgUTP = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgUTP" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTPCAV (forall c. Idea c => c -> Sentence
short CI
phsChgMtrl), String -> Sentence
S String
"is actually a poor",
forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
CT.thermalConductor Sentence -> Sentence -> Sentence
`sC` String -> Sentence
S String
"so the", forall n. NamedIdea n => n -> Sentence
phrase CI
assumption,
String -> Sentence
S String
"of uniform", forall n. NamedIdea n => n -> Sentence
phrase ConstrConcept
tempPCM, String -> Sentence
S String
"is not likely"] ) String
"Uniform-Temperature-PCM"
ConceptChunk
likeChgDom
likeChgTCVOD :: ConceptInstance
likeChgTCVOD = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTCVOD" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTHCCoT (String -> Sentence
S String
"The"), forall n. NamedIdea n => n -> Sentence
phrase UncertQ
tempC, String -> Sentence
S String
"will change over",
String -> Sentence
S String
"course" Sentence -> Sentence -> Sentence
`S.the_ofThe` String -> Sentence
S String
"day, depending", String -> Sentence
S String
"on the", forall n. NamedIdea n => n -> Sentence
phrase UnitalChunk
energy,
String -> Sentence
S String
"received from the sun"]) String
"Temperature-Coil-Variable-Over-Day" ConceptChunk
likeChgDom
likeChgTCVOL :: ConceptInstance
likeChgTCVOL = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTCVOL" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTHCCoL (String -> Sentence
S String
"The"), forall n. NamedIdea n => n -> Sentence
phrase UncertQ
tempC,
String -> Sentence
S String
"will actually change along its length as the", forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
water,
String -> Sentence
S String
"within it cools"] ) String
"Temperature-Coil-Variable-Over-Length" ConceptChunk
likeChgDom
likeChgDT :: ConceptInstance
likeChgDT = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgDT" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpCTNOD (String -> Sentence
S String
"The"), forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
model, String -> Sentence
S String
"currently only",
String -> Sentence
S String
"accounts for charging of the tank. A more complete", forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
model,
String -> Sentence
S String
"would also account for discharging of the tank"] ) String
"Discharging-Tank" ConceptChunk
likeChgDom
likeChgDITPW :: ConceptInstance
likeChgDITPW = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgDITPW" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpSITWP (String -> Sentence
S String
"To add more flexibility to the"),
forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
simulation Sentence -> Sentence -> Sentence
`sC` forall n. NounPhrase n => n -> Sentence
phraseNP (UncertQ
tempInit forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`the_ofThe` ConceptChunk
water) Sentence -> Sentence -> Sentence
`S.andThe`
forall c. Idea c => c -> Sentence
short CI
phsChgMtrl, String -> Sentence
S String
"could be allowed to have different",
forall n. NamedIdea n => n -> Sentence
plural IdeaDict
value] ) String
"Different-Initial-Temps-PCM-Water" ConceptChunk
likeChgDom
likeChgTLH :: ConceptInstance
likeChgTLH = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTLH" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpPIT (String -> Sentence
S String
"Any real"), forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
tank, String -> Sentence
S String
"cannot",
String -> Sentence
S String
"be perfectly insulated and will lose", forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
CT.heat] ) String
"Tank-Lose-Heat"
ConceptChunk
likeChgDom
unlikelyChgs :: [ConceptInstance]
unlikelyChgs :: [ConceptInstance]
unlikelyChgs = [ConceptInstance
unlikeChgWPFS, ConceptInstance
unlikeChgNIHG, ConceptInstance
unlikeChgNGS]
unlikeChgWPFS, unlikeChgNIHG, unlikeChgNGS :: ConceptInstance
unlikeChgWPFS :: ConceptInstance
unlikeChgWPFS = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgWPFS" (
[Sentence] -> Sentence
foldlSent [forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS ConceptInstance
assumpWAL Sentence -> Sentence -> Sentence
`sC` forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNGSP (String -> Sentence
S String
"It is unlikely for the change of"),
forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
water, String -> Sentence
S String
"from liquid to a solid or the state change of the", forall n. NamedIdea n => n -> Sentence
phrase CI
phsChgMtrl,
String -> Sentence
S String
"from a liquid to a gas to be considered"] ) String
"Water-PCM-Fixed-States" ConceptChunk
unlikeChgDom
unlikeChgNIHG :: ConceptInstance
unlikeChgNIHG = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgNIHG" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNIHGBWP (String -> Sentence
S String
"Is used for the derivations of"),
forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnWtr Sentence -> Sentence -> Sentence
`S.and_` forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnPCM] )
String
"No-Internal-Heat-Generation" ConceptChunk
unlikeChgDom
unlikeChgNGS :: ConceptInstance
unlikeChgNGS = forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgNGS" (
[Sentence] -> Sentence
foldlSent [forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNGSP (String -> Sentence
S String
"Is used for the derivation of"), forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnPCM,
String -> Sentence
S String
"and for the equation given by", forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
heatEInPCM, String -> Sentence
S String
"to be valid"] )
String
"No-Gaseous-State" ConceptChunk
unlikeChgDom