Location: Example bond graph models @ 6fad47e8e5e0 / project / dtp_bgproject.cellml

Author:
Soroush <ssaf006@aucklanduni.ac.nz>
Date:
2018-03-28 16:04:58+13:00
Desc:
added the project file
Permanent Source URI:
https://models.cellml.org/workspace/47d/rawfile/6fad47e8e5e097485b35964f4e00dfa6801c05c0/project/dtp_bgproject.cellml

<?xml version='1.0'?>
<model name="BG_Project" xmlns="http://www.cellml.org/cellml/1.1#" xmlns:cellml="http://www.cellml.org/cellml/1.1#">
    <!-- Units-->
    <units name="J_per_C">
        <unit units="joule"/>
        <unit exponent="-1" units="coulomb"/>
    </units>
    <units name="C_per_s">
        <unit units="coulomb"/>
        <unit exponent="-1" units="second"/>
    </units>
    <units name="C_per_s2">
        <unit units="coulomb"/>
        <unit exponent="-2" units="second"/>
    </units>
    <units name="C2_per_J">
        <unit exponent="2" units="coulomb"/>
        <unit exponent="-1" units="joule"/>
    </units>
    <units name="Js_per_C2">
        <unit units="joule"/>
        <unit units="second"/>
        <unit exponent="-2" units="coulomb"/>
    </units>
    <units name="Js2_per_C2">
        <unit units="joule"/>
        <unit exponent="2" units="second"/>
        <unit exponent="-2" units="coulomb"/>
    </units>
    <units name="radian_per_s">
        <unit units="radian"/>
        <unit exponent="-1" units="second"/>
    </units>
    <units name="J_per_m">
        <unit units="joule"/>
        <unit exponent="-1" units="metre"/>
    </units>
    <units name="J_per_rad">
        <unit units="joule"/>
        <unit exponent="-1" units="radian"/>
    </units>
    <units name="m_per_s">
        <unit units="metre"/>
        <unit exponent="-1" units="second"/>
    </units>
    <units name="m_per_s2">
        <unit units="metre"/>
        <unit exponent="-2" units="second"/>
    </units>
    <units name="m2_per_J">
        <unit exponent="2" units="metre"/>
        <unit exponent="-1" units="joule"/>
    </units>
    <units name="Js_per_m2">
        <unit units="joule"/>
        <unit units="second"/>
        <unit exponent="-2" units="metre"/>
    </units>
    <units name="J_per_m2">
        <unit units="joule"/>
        <unit exponent="-2" units="metre"/>
    </units>
    <units name="Js2_per_m2">
        <unit units="joule"/>
        <unit exponent="2" units="second"/>
        <unit exponent="-2" units="metre"/>
    </units>
    <units name="Js_per_m">
        <unit units="joule"/>
        <unit exponent="1" units="second"/>
        <unit exponent="-1" units="metre"/>
    </units>
    <units name="Js_per_Cm">
        <unit units="joule"/>
        <unit units="second"/>
        <unit exponent="-1" units="coulomb"/>
        <unit exponent="-1" units="meter"/>
    </units>
    <units name="Js_per_rad2">
        <unit units="joule"/>
        <unit units="second"/>
        <unit exponent="-2" units="radian"/>
    </units>
    <units name="Js2_per_rad2">
        <unit units="joule"/>
        <unit exponent="2" units="second"/>
        <unit exponent="-2" units="radian"/>
    </units>
    <!-- main-->
    <component name="main">
        <variable name="t" units="second"/>
        <!-- state variables-->
        <variable initial_value="0" name="v_1" units="C_per_s"/>
        <variable name="v_2" units="radian_per_s"/>
        <variable initial_value="0" name="v_3" units="m_per_s"/>
        <variable initial_value="20" name="u_1" units="J_per_C"/>
        <variable name="u_2" units="J_per_C"/>
        <variable name="u_3" units="J_per_C"/>
        <variable name="u_4" units="J_per_C"/>
        <variable name="u_5" units="J_per_rad"/>
        <variable name="u_6" units="J_per_rad"/>
        <variable name="u_7" units="J_per_rad"/>
        <variable name="u_8" units="J_per_m"/>
        <variable name="u_9" units="J_per_m"/>
        <variable name="u_10" units="J_per_m"/>
        <!-- Constitutive parameters-->
        <variable initial_value="10000" name="R_1" units="Js_per_C2"/>
        <variable initial_value="10" name="R_2" units="Js_per_rad2"/>
        <variable initial_value="1" name="L_1" units="Js2_per_C2"/>
        <variable initial_value="10" name="L_2" units="Js2_per_m2"/>
        <variable initial_value="9.81" name="g" units="m_per_s2"/>
        <!-- conversion parameter-->
        <variable initial_value="5" name="n" units="dimensionless"/>
        <variable initial_value="3" name="r" units="Js_per_Cm"/>
        <!-- Conservation Laws-->
        <math xmlns="http://www.w3.org/1998/Math/MathML">
            <apply>
                <eq/>
                <ci>u_1</ci>
                <apply>
                    <minus/>
                    <apply>
                        <minus/>
                        <apply>
                            <minus/>
                            <ci>u_2</ci>
                        </apply>
                        <ci>u_3</ci>
                    </apply>
                    <ci>u_4</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_5</ci>
                <apply>
                    <plus/>
                    <ci>u_6</ci>
                    <ci>u_7</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_8</ci>
                <apply>
                    <plus/>
                    <ci>u_9</ci>
                    <ci>u_10</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_10</ci>
                <apply>
                    <times/>
                    <ci>L_2</ci>
                    <ci>g</ci>
                </apply>
            </apply>
            <!-- Constitutive Relaton-->
            <apply>
                <eq/>
                <ci>u_2</ci>
                <apply>
                    <times/>
                    <ci>R_1</ci>
                    <ci>v_1</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_6</ci>
                <apply>
                    <times/>
                    <ci>R_2</ci>
                    <ci>v_2</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>v_1</ci>
                </apply>
                <apply>
                    <divide/>
                    <ci>u_3</ci>
                    <ci>L_1</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <apply>
                    <diff/>
                    <bvar>
                        <ci>t</ci>
                    </bvar>
                    <ci>v_3</ci>
                </apply>
                <apply>
                    <divide/>
                    <ci>u_9</ci>
                    <ci>L_2</ci>
                </apply>
            </apply>
            <!-- Transformations-->
            <apply>
                <eq/>
                <ci>u_5</ci>
                <apply>
                    <times/>
                    <ci>r</ci>
                    <ci>v_1</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_4</ci>
                <apply>
                    <times/>
                    <ci>r</ci>
                    <ci>v_2</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>u_8</ci>
                <apply>
                    <times/>
                    <ci>n</ci>
                    <ci>u_7</ci>
                </apply>
            </apply>
            <apply>
                <eq/>
                <ci>v_2</ci>
                <apply>
                    <times/>
                    <ci>n</ci>
                    <ci>v_3</ci>
                </apply>
            </apply>
        </math>
    </component>
</model>