module Drasil.GamePhysics.Concepts (centreMass, threeD, twoD, gamePhysics, acronyms) where

import Language.Drasil
import Data.Drasil.Concepts.Documentation (assumption, goalStmt, likelyChg,
  requirement, refBy, refName, srs, typUnc, unlikelyChg)
import Data.Drasil.Concepts.Math (ode)
import Data.Drasil.Concepts.PhysicalProperties (ctrOfMass)
import Data.Drasil.Concepts.Physics (threeD, twoD)
import Data.Drasil.TheoryConcepts (dataDefn, genDefn, inModel, thModel)
import Data.Drasil.Domains (physics)

import Control.Lens ((^.))

----- Acronyms -----

acronyms :: [CI]
acronyms :: [CI]
acronyms = [CI
assumption, CI
centreMass, CI
dataDefn, CI
genDefn, CI
goalStmt, CI
inModel,
  CI
likelyChg, CI
ode, CI
requirement, CI
refBy, CI
refName, CI
srs, CI
thModel, CI
threeD, CI
twoD, CI
typUnc, CI
unlikelyChg]

centreMass, gamePhysics :: CI
centreMass :: CI
centreMass  = String -> NP -> String -> [IdeaDict] -> CI
commonIdeaWithDict String
"centreMass"  (ConceptChunk
ctrOfMass 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) String
"CM" [IdeaDict
physics]
gamePhysics :: CI
gamePhysics = String -> NP -> String -> [IdeaDict] -> CI
commonIdeaWithDict String
"gamePhysics" (String -> NP
pn String
"GamePhysics") String
"GamePhysics" [IdeaDict
physics]