﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<?application progid="SMath Solver" version="1.3.0.9126"?>
<worksheet xmlns="http://smath.info/schemas/worksheet/1.0">
  <settings ppi="96">
    <identity>
      <id>065acc47-4dc2-4ad9-9b0c-772a03c7f902</id>
      <revision>3</revision>
    </identity>
    <metadata lang="ger">
      <author>titus.nggm</author>
    </metadata>
    <calculation>
      <precision>4</precision>
      <exponentialThreshold>5</exponentialThreshold>
      <trailingZeros>false</trailingZeros>
      <significantDigitsMode>false</significantDigitsMode>
      <mixedNumbers>false</mixedNumbers>
      <roundingMode>0</roundingMode>
      <approximateEqualAccuracy>3</approximateEqualAccuracy>
      <fractions>decimal</fractions>
    </calculation>
    <pageModel active="false" viewMode="2" printGrid="false" printAreas="true" simpleEqualsOnly="false" printBackgroundImages="true" hideElementsHighlightings="true">
      <paper id="9" orientation="Portrait" width="827" height="1169" />
      <margins left="39" right="39" top="49" bottom="49" />
      <header alignment="Center" color="#a9a9a9">&amp;[DATE] &amp;[TIME] - &amp;[FILENAME]</header>
      <footer alignment="Center" color="#a9a9a9">&amp;[PAGENUM] / &amp;[COUNT]</footer>
      <backgrounds />
    </pageModel>
    <dependencies>
      <assembly name="SMath Core" version="1.73.9126.0" guid="a37cba83-b69c-4c71-9992-55ff666763bd" />
      <assembly name="MathRegion" version="1.73.9126.0" guid="02f1ab51-215b-466e-a74d-5d8b1cf85e8d" />
      <assembly name="CustomFunctions" version="1.2.9372.30444" guid="18dadffd-79a3-4cf9-aee1-d66deb0ea720" />
      <assembly name="SpecialFunctions" version="1.73.9126.0" guid="2814e667-4e12-48b1-8d51-194e480eabc5" />
      <assembly name="TextRegion" version="1.73.9126.0" guid="485d28c5-349a-48b6-93be-12a35a1c1e39" />
      <assembly name="Writer Region" version="0.23.8034.36139" guid="5922d677-323f-4327-8c68-be902d8339ad" />
      <assembly name="X-Y Plot Region (JXCharts)" version="0.4.9441.40064" guid="c12231ec-4873-43c1-a7d0-a167ebd17066" />
    </dependencies>
  </settings>
  <regions type="content">
    <region left="0" top="0" width="750" height="53" color="#000000" fontSize="10">
      <text lang="ger" fontFamily="Courier New" fontSize="10">
        <content>
          <p>I have a time-dependent function (F(t)) that returns a vector (in my case, a load vector in R^3) together with the corresponding position vector of the load. The cross product can be evaluated at specific time instances, but not symbolically over the entire load cycle.</p>
        </content>
      </text>
    </region>
    <region left="0" top="72" width="246" height="295" color="#000000" fontSize="10">
      <math>
        <description active="true" position="Top" lang="eng">
          <content>
            <p>time-dependent load-vector</p>
          </content>
        </description>
        <input>
          <e type="operand">t</e>
          <e type="function" args="1">F</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">1</e>
          <e type="operand">3</e>
          <e type="operand">1</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">*</e>
          <e type="operand">t</e>
          <e type="operand">0</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="operand">2</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="3">ltle</e>
          <e type="operand">1</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">3</e>
          <e type="operand">1</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">*</e>
          <e type="operand">t</e>
          <e type="operand">2</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="operand">4</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="3">ltle</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">1</e>
          <e type="operator" args="1">-</e>
          <e type="operand">3</e>
          <e type="operand">1</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">*</e>
          <e type="operand">t</e>
          <e type="operand">4</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="operand">6</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="3">ltle</e>
          <e type="operand">1</e>
          <e type="operator" args="1">-</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">3</e>
          <e type="operand">1</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">*</e>
          <e type="operand">t</e>
          <e type="operand">6</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="operand">8</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="3">ltle</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">3</e>
          <e type="operand">1</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="9">cases</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region left="0" top="396" width="101" height="27" color="#000000" fontSize="10">
      <math>
        <description active="true" position="Top" lang="eng">
          <content>
            <p>position vector of load</p>
          </content>
        </description>
        <input>
          <e type="operand">r</e>
          <e type="operand">1</e>
          <e type="operand">1</e>
          <e type="operand">1</e>
          <e type="operand">1</e>
          <e type="operand">3</e>
          <e type="function" args="5">mat</e>
          <e type="operand" style="unit">m</e>
          <e type="operator" args="2">*</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region left="0" top="468" width="749" height="26" color="#000000">
      <writer lang="ger" wrap="Page" width="735"><![CDATA[<span style="font-family: 'Courier New'; font-size: 10pt; font-weight: normal; font-style: normal; color: windowtext; background-color: Transparent; vertical-align: baseline; text-align: justify; margin-left: 0pt; text-indent: 0pt; line-height: 115%">
<div>The load-vector of the system (Forces and Moments from (0,0,0)) is given as:</div></span>]]></writer>
    </region>
    <region left="0" top="504" width="238" height="36" color="#000000" fontSize="10">
      <math>
        <input>
          <e type="operand">t</e>
          <e type="function" args="1">Q</e>
          <e type="operand">t</e>
          <e type="function" args="1">F</e>
          <e type="operand">r</e>
          <e type="function" args="1">transpose</e>
          <e type="operand">t</e>
          <e type="function" args="1">F</e>
          <e type="operator" args="2">†</e>
          <e type="function" args="2">stack</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region left="0" top="558" width="749" height="26" color="#000000">
      <writer lang="ger" wrap="Page" width="735"><![CDATA[<span style="font-family: 'Courier New'; font-size: 10pt; font-weight: normal; font-style: normal; color: windowtext; background-color: Transparent; vertical-align: baseline; text-align: justify; margin-left: 0pt; text-indent: 0pt; line-height: 115%">
<div>The evaluation of this load-vector is working for certain timesteps:</div></span>]]></writer>
    </region>
    <region left="0" top="594" width="140" height="118" color="#000000" fontSize="10">
      <math>
        <input>
          <e type="operand">1</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="1">Q</e>
        </input>
        <contract>
          <e type="operand" style="unit">kN</e>
        </contract>
        <result action="numeric">
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">1</e>
          <e type="operand">1</e>
          <e type="operand" style="unit">m</e>
          <e type="operator" args="2">*</e>
          <e type="operand">1</e>
          <e type="operand" style="unit">m</e>
          <e type="operator" args="2">*</e>
          <e type="operator" args="1">-</e>
          <e type="operand">0</e>
          <e type="operand">6</e>
          <e type="operand">1</e>
          <e type="function" args="8">mat</e>
        </result>
      </math>
    </region>
    <region left="0" top="711" width="749" height="26" color="#000000">
      <writer lang="ger" wrap="Page" width="735"><![CDATA[<span style="font-family: 'Courier New'; font-size: 10pt; font-weight: normal; font-style: normal; color: windowtext; background-color: Transparent; vertical-align: baseline; text-align: justify; margin-left: 0pt; text-indent: 0pt; line-height: 115%">
<div>But not in whole:</div></span>]]></writer>
    </region>
    <region left="0" top="747" width="69" height="26" color="#000000" fontSize="10">
      <math error="63">
        <input>
          <e type="operand">t</e>
          <e type="function" args="1">Q</e>
        </input>
        <result action="symbolic">
          <e type="operand">#</e>
        </result>
      </math>
    </region>
    <region left="0" top="783" width="742" height="203" color="#000000" fontSize="10">
      <text lang="ger" fontFamily="Courier New" fontSize="10">
        <content>
          <p>That is generally fine — I do not actually need a symbolic expression of the complete load cycle. However, for fatigue and lifetime calculations of certain components, I need to compute an equivalent force/load value using an integral. <br /><br />I expected the built-in integral function to evaluate the expression numerically point by point, but instead I get the same error as when trying to evaluate (Q(t)) symbolically.<br /><br />For a trivial example like this, the integral could of course be calculated manually. But with much larger and more complex load-cycle definitions, this quickly becomes impractical.<br /><br />My current workaround is to define a time vector using range() and then calculate the sum divided by the number of time steps. This works reasonably well, but it does not feel like the ideal solution.</p>
        </content>
      </text>
    </region>
    <region left="0" top="981" width="749" height="26" color="#000000">
      <writer lang="ger" wrap="Page" width="735"><![CDATA[<span style="font-family: 'Courier New'; font-size: 10pt; font-weight: normal; font-style: normal; color: windowtext; background-color: Transparent; vertical-align: baseline; text-align: justify; margin-left: 0pt; text-indent: 0pt; line-height: 115%">
<div>plots are working:</div></span>]]></writer>
    </region>
    <region left="63" top="1035" width="552" height="364" color="#000000" bgColor="#ffffff" fontSize="10">
      <xyplot animFrameRate="20" animPlaybackMode="RepeatIndefinitely" width="542" height="356" points="1000" name="XYPlot" keepAspectRatio="false">
        <chartstyle usedefault="false" backcolor="White" bordercolor="Black" />
        <grid gridcolor="LightGray" gridpattern="Dash" gridthickness="1" isxgrid="true" isygrid="true" isy2grid="false" />
        <xaxes xmin="-0.3357935" xmax="9.6642" xtick="1" visible="True" decimalplaces="3" numberformat="General" />
        <yaxes ymin="-1.539326" ymax="2.460674" ytick="1" visible="True" decimalplaces="3" numberformat="General" />
        <y2axes isy2axis="false" y2min="-1" y2max="1" y2tick="0.5" visible="True" decimalplaces="3" numberformat="General" />
        <title2d title="" titlefont="Arial, 10pt" titlefontcolor="Black" />
        <xylabel labelfont="Arial, 10pt" labelfontcolor="Black" tickfont="Arial, 8pt" tickfontcolor="Black" xlabel="x" ylabel="y" y2label="y2" />
        <legend isbordervisible="true" islegendvisible="false" legendbackcolor="White" legendbordercolor="Black" legendfont="Arial, 8pt" legendposition="NorthEast" textcolor="Black" />
        <traces>
          <trace seriesname="" isy2data="false" isvisible="true" plotmethod="Lines" lineantialias="true" linecolor="Blue" linethickness="1" linepattern="Solid" fillmode="Auto" filltotrace="-1" filled="false" hatched="false" fillcolor="64, 0, 0, 255" hatchstyle="Percent20" symbolantialias="true" symbolsize="8" symboltype="None" symbolborderthickness="1" symbolbordercolor="Black" symbolfillcolor="White" />
        </traces>
        <input>
          <e type="operand">x</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="1">Q</e>
          <e type="operand">1</e>
          <e type="function" args="2">el</e>
          <e type="operand" style="unit">kN</e>
          <e type="operator" args="2">/</e>
        </input>
      </xyplot>
    </region>
    <region left="27" top="1485" width="128" height="69" color="#000000" fontSize="10">
      <math>
        <input>
          <e type="operand">t</e>
          <e type="function" args="1">Q</e>
          <e type="operand">1</e>
          <e type="function" args="2">el</e>
          <e type="operand">t</e>
          <e type="operand">0</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="operand">8</e>
          <e type="operand" style="unit">s</e>
          <e type="operator" args="2">*</e>
          <e type="function" args="4">int</e>
        </input>
        <result action="symbolic">
          <e type="operand">#</e>
        </result>
      </math>
    </region>
  </regions>
</worksheet>