module Drasil.SWHS.Goals (goals, waterTempGS, pcmTempGS, waterEnergyGS, pcmEnergyGS) where import Language.Drasil import Data.Drasil.Concepts.Documentation (goalStmtDom) import Data.Drasil.Concepts.Physics (time) import Drasil.SWHS.Unitals (tempW, tempPCM, watE, pcmE) goals :: [ConceptInstance] goals :: [ConceptInstance] goals = [ConceptInstance waterTempGS, ConceptInstance pcmTempGS, ConceptInstance waterEnergyGS, ConceptInstance pcmEnergyGS] waterTempGS :: ConceptInstance waterTempGS :: ConceptInstance waterTempGS = String -> Sentence -> String -> ConceptChunk -> ConceptInstance forall c. Concept c => String -> Sentence -> String -> c -> ConceptInstance cic String "waterTempGS" (ConstrConcept -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence goalState ConstrConcept tempW) String "Predict-Water-Temperature" ConceptChunk goalStmtDom pcmTempGS :: ConceptInstance pcmTempGS :: ConceptInstance pcmTempGS = String -> Sentence -> String -> ConceptChunk -> ConceptInstance forall c. Concept c => String -> Sentence -> String -> c -> ConceptInstance cic String "pcmTempGS" (ConstrConcept -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence goalState ConstrConcept tempPCM) String "Predict-PCM-Temperature" ConceptChunk goalStmtDom waterEnergyGS :: ConceptInstance waterEnergyGS :: ConceptInstance waterEnergyGS = String -> Sentence -> String -> ConceptChunk -> ConceptInstance forall c. Concept c => String -> Sentence -> String -> c -> ConceptInstance cic String "waterEnergyGS" (ConstrConcept -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence goalState ConstrConcept watE) String "Predict-Water-Energy" ConceptChunk goalStmtDom pcmEnergyGS :: ConceptInstance pcmEnergyGS :: ConceptInstance pcmEnergyGS = String -> Sentence -> String -> ConceptChunk -> ConceptInstance forall c. Concept c => String -> Sentence -> String -> c -> ConceptInstance cic String "pcmEnergyGS" (ConstrConcept -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence goalState ConstrConcept pcmE) String "Predict-PCM-Energy" ConceptChunk goalStmtDom goalState :: NamedIdea varTerm => varTerm -> Sentence goalState :: forall varTerm. NamedIdea varTerm => varTerm -> Sentence goalState varTerm varTerm = [Sentence] -> Sentence foldlSent [String -> Sentence S String "Predict the", varTerm -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence phrase varTerm varTerm, String -> Sentence S String "over", ConceptChunk -> Sentence forall varTerm. NamedIdea varTerm => varTerm -> Sentence phrase ConceptChunk time]