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 = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgUTP" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTPCAV (CI -> Sentence
forall c. Idea c => c -> Sentence
short CI
phsChgMtrl) Sentence -> Sentence -> Sentence
`S.is` String -> Sentence
S String
"actually a poor",
ConceptChunk -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
CT.thermalConductor Sentence -> Sentence -> Sentence
`sC` String -> Sentence
S String
"so the", CI -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase CI
assumption,
String -> Sentence
S String
"of uniform", ConstrConcept -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase ConstrConcept
tempPCM Sentence -> Sentence -> Sentence
`S.is` String -> Sentence
S String
"not likely"] ) String
"Uniform-Temperature-PCM"
ConceptChunk
likeChgDom
likeChgTCVOD :: ConceptInstance
likeChgTCVOD = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTCVOD" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTHCCoT (String -> Sentence
S String
"The"), UncertQ -> Sentence
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" Sentence -> Sentence -> Sentence
`S.onThe` UnitalChunk -> Sentence
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 = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTCVOL" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpTHCCoL (String -> Sentence
S String
"The"), UncertQ -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase UncertQ
tempC,
String -> Sentence
S String
"will actually change along its length as the", ConceptChunk -> Sentence
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 = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgDT" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpCTNOD (String -> Sentence
S String
"The"), IdeaDict -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
model, String -> Sentence
S String
"currently only",
String -> Sentence
S String
"accounts" Sentence -> Sentence -> Sentence
`S.for` String -> Sentence
S String
"charging" Sentence -> Sentence -> Sentence
`S.ofThe` String -> Sentence
S String
"tank. A more complete", IdeaDict -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
model,
String -> Sentence
S String
"would also account" Sentence -> Sentence -> Sentence
`S.for` String -> Sentence
S String
"discharging" Sentence -> Sentence -> Sentence
`S.ofThe` String -> Sentence
S String
"tank"] ) String
"Discharging-Tank" ConceptChunk
likeChgDom
likeChgDITPW :: ConceptInstance
likeChgDITPW = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgDITPW" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpSITWP (String -> Sentence
S String
"To add more flexibility to the"),
IdeaDict -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase IdeaDict
simulation Sentence -> Sentence -> Sentence
`sC` NP -> Sentence
forall n. NounPhrase n => n -> Sentence
phraseNP (UncertQ
tempInit UncertQ -> ConceptChunk -> NP
forall c d. (NamedIdea c, NamedIdea d) => c -> d -> NP
`the_ofThe` ConceptChunk
water) Sentence -> Sentence -> Sentence
`S.andThe`
CI -> Sentence
forall c. Idea c => c -> Sentence
short CI
phsChgMtrl, String -> Sentence
S String
"could be allowed to have different",
IdeaDict -> Sentence
forall n. NamedIdea n => n -> Sentence
plural IdeaDict
value] ) String
"Different-Initial-Temps-PCM-Water" ConceptChunk
likeChgDom
likeChgTLH :: ConceptInstance
likeChgTLH = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"likeChgTLH" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpPIT (String -> Sentence
S String
"Any real"), ConceptChunk -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
tank, String -> Sentence
S String
"cannot",
String -> Sentence
S String
"be perfectly insulated and will lose", ConceptChunk -> Sentence
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 = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgWPFS" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence
forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS ConceptInstance
assumpWAL Sentence -> Sentence -> Sentence
`sC` ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNGSP (String -> Sentence
S String
"It is unlikely" Sentence -> Sentence -> Sentence
`S.for` String -> Sentence
S String
"the change of"),
ConceptChunk -> Sentence
forall n. NamedIdea n => n -> Sentence
phrase ConceptChunk
water, String -> Sentence
S String
"from liquid to a solid or the state change" Sentence -> Sentence -> Sentence
`S.ofThe` CI -> Sentence
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 = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgNIHG" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNIHGBWP (String -> Sentence
S String
"Is used" Sentence -> Sentence -> Sentence
`S.for` String -> Sentence
S String
"the derivations of"),
InstanceModel -> Sentence
forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnWtr Sentence -> Sentence -> Sentence
`S.and_` InstanceModel -> Sentence
forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnPCM] )
String
"No-Internal-Heat-Generation" ConceptChunk
unlikeChgDom
unlikeChgNGS :: ConceptInstance
unlikeChgNGS = String -> Sentence -> String -> ConceptChunk -> ConceptInstance
forall c.
Concept c =>
String -> Sentence -> String -> c -> ConceptInstance
cic String
"unlikeChgNGS" (
[Sentence] -> Sentence
foldlSent [ConceptInstance -> Sentence -> Sentence
forall x.
(HasShortName x, Referable x) =>
x -> Sentence -> Sentence
chgsStart ConceptInstance
assumpNGSP (String -> Sentence
S String
"Is used" Sentence -> Sentence -> Sentence
`S.for` String -> Sentence
S String
"the derivation of"), InstanceModel -> Sentence
forall r.
(HasUID r, HasRefAddress r, HasShortName r) =>
r -> Sentence
refS InstanceModel
eBalanceOnPCM,
String -> Sentence
S String
"and for the equation given by", InstanceModel -> Sentence
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