- Author:
- Andrew Miller <ak.miller@auckland.ac.nz>
- Date:
- 2011-08-16 11:44:27+12:00
- Desc:
- Initial work on the model and associated SED-ML descriptions, along with work towards scripts to generate figures showing the model in action
- Permanent Source URI:
- https://models.physiomeproject.org/w/miller/uncertain-starting-parabola/rawfile/7542cec1cda8b6deab8f25042f92f487edb436f5/UncertainStartingParameter.cellml
<?xml version="1.0" encoding="iso-8859-1"?>
<model name="uncertain_starting_parabola"
xmlns="http://www.cellml.org/cellml/1.1#"
xmlns:cellml="http://www.cellml.org/cellml/1.1#">
<component name="main">
<variable name="time" units="second"/>
<variable name="gravity_accel" units="metres_per_second2"/>
<variable name="initial_velocity_cartesian_x" units="metres_per_second"/>
<variable name="initial_velocity_cartesian_y" units="metres_per_second"/>
<variable name="initial_position_cartesian_x" units="metre"/>
<variable name="initial_position_cartesian_y" units="metre"/>
<variable name="velocity_cartesian_x" units="metres_per_second"/>
<variable name="velocity_cartesian_y" units="metres_per_second"
initial_value="initial_velocity_cartesian_y"/>
<variable name="position_cartesian_x" units="metre"
initial_value="initial_position_cartesian_x"/>
<variable name="position_cartesian_y" units="metre"
initial_value="initial_position_cartesian_y"/>
<!-- These variables appear as bound variables in expressions. -->
<variable name="x" units="metre" initial_value="0"/>
<variable name="xv" units="metres_per_second" initial_value="0"/>
<math xmlns="http://www.w3.org/1998/Math/MathML">
<apply><eq/>
<ci>velocity_cartesian_x</ci>
<ci>initial_velocity_cartesian_x</ci>
</apply>
<apply><eq/>
<apply><diff/>
<bvar><ci>time</ci></bvar>
<ci>velocity_cartesian_y</ci>
</apply>
<apply><minus/><ci>gravity_accel</ci></apply>
</apply>
<apply><eq/>
<apply><diff/>
<bvar><ci>time</ci></bvar>
<ci>position_cartesian_x</ci>
</apply>
<ci>velocity_cartesian_x</ci>
</apply>
<apply><eq/>
<apply><diff/>
<bvar><ci>time</ci></bvar>
<ci>position_cartesian_y</ci>
</apply>
<ci>velocity_cartesian_y</ci>
</apply>
<!-- xPosition(0) ~ N(0, 1) -->
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#uncertParWithDist"/>
<ci>initial_position_cartesian_x</ci>
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#distFromDensity"/>
<lambda>
<bvar><ci>x</ci></bvar>
<apply><times/>
<apply><divide/>
<cn cellml:units="dimensionless">1</cn>
<apply><root/>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<pi/>
<cn cellml:units="dimensionless">1</cn>
</apply>
</apply>
</apply>
<apply><exp/>
<apply><minus/>
<apply><divide/>
<apply><power/>
<apply><minus/>
<ci>x</ci>
<cn cellml:units="metre">0</cn>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<cn cellml:units="metre2">1</cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</lambda>
</apply>
</apply>
<!-- yPosition ~ N(0, 1) -->
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#uncertParWithDist"/>
<ci>initial_position_cartesian_y</ci>
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#distFromDensity"/>
<lambda>
<bvar><ci>x</ci></bvar>
<apply><times/>
<apply><divide/>
<cn cellml:units="dimensionless">1</cn>
<apply><root/>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<pi/>
<cn cellml:units="dimensionless">1</cn>
</apply>
</apply>
</apply>
<apply><exp/>
<apply><minus/>
<apply><divide/>
<apply><power/>
<apply><minus/>
<ci>x</ci>
<cn cellml:units="metre">0</cn>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<cn cellml:units="metre2">1</cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</lambda>
</apply>
</apply>
<!-- xVelocity(0) ~ N(10, 1) -->
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#uncertParWithDist"/>
<ci>initial_velocity_cartesian_x</ci>
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#distFromDensity"/>
<lambda>
<bvar><ci>xv</ci></bvar>
<apply><times/>
<apply><divide/>
<cn cellml:units="dimensionless">1</cn>
<apply><root/>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<pi/>
<cn cellml:units="dimensionless">1</cn>
</apply>
</apply>
</apply>
<apply><exp/>
<apply><minus/>
<apply><divide/>
<apply><power/>
<apply><minus/>
<ci>xv</ci>
<cn cellml:units="metres_per_second">10</cn>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<cn cellml:units="metres2_per_second2">1</cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</lambda>
</apply>
</apply>
<!-- yVelocity(0) ~ N(10, 1) -->
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#uncertParWithDist"/>
<ci>initial_velocity_cartesian_y</ci>
<apply><csymbol definitionURL="http://www.cellml.org/uncert1#distFromDensity"/>
<lambda>
<bvar><ci>xv</ci></bvar>
<apply><times/>
<apply><divide/>
<cn cellml:units="dimensionless">1</cn>
<apply><root/>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<pi/>
<cn cellml:units="dimensionless">1</cn>
</apply>
</apply>
</apply>
<apply><exp/>
<apply><minus/>
<apply><divide/>
<apply><power/>
<apply><minus/>
<ci>xv</ci>
<cn cellml:units="metres_per_second">10</cn>
</apply>
<cn cellml:units="dimensionless">2</cn>
</apply>
<apply><times/>
<cn cellml:units="dimensionless">2</cn>
<cn cellml:units="metres2_per_second2">1</cn>
</apply>
</apply>
</apply>
</apply>
</apply>
</lambda>
</apply>
</apply>
<!-- This should be made to include random variation... -->
<apply><eq/>
<ci>gravity_accel</ci>
<cn cellml:units="metres_per_second2">9.80665</cn>
</apply>
</math>
<units name="metres_per_second">
<unit units="metre"/>
<unit units="second" exponent="-1"/>
</units>
<units name="metres_per_second2">
<unit units="metre"/>
<unit units="second" exponent="-2"/>
</units>
<units name="metres2_per_second2">
<unit units="metre" exponent="2" />
<unit units="second" exponent="-2"/>
</units>
</component>
</model>