﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<?application progid="SMath Studio Desktop" version="0.97.5346.24640"?>
<regions>
  <settings>
    <identity>
      <id>09be7c8d-1819-4f95-81b3-5e521be4aafa</id>
      <revision>12</revision>
    </identity>
    <calculation>
      <precision>6</precision>
      <exponentialThreshold>5</exponentialThreshold>
      <fractions>auto</fractions>
    </calculation>
    <pageModel active="true" printAreas="true" simpleEqualsOnly="false" printBackgroundImages="true">
      <paper id="1" orientation="Portrait" width="850" height="1100" />
      <margins left="39" right="39" top="39" bottom="39" />
      <header alignment="Center" color="#a9a9a9">&amp;[DATE] &amp;[TIME] - &amp;[FILENAME]</header>
      <footer alignment="Center" color="#a9a9a9">&amp;[PAGENUM] / &amp;[COUNT]</footer>
      <backgrounds />
    </pageModel>
    <dependences>
      <assembly name="SMath Studio Desktop" version="0.97.5346.24640" guid="a37cba83-b69c-4c71-9992-55ff666763bd" />
      <assembly name="Text Region" version="1.10.5346.31409" guid="485d28c5-349a-48b6-93be-12a35a1c1e39" />
      <assembly name="Special Functions" version="1.11.5346.31403" guid="2814e667-4e12-48b1-8d51-194e480eabc5" />
      <assembly name="Math Region" version="0.97.5346.24640" guid="02f1ab51-215b-466e-a74d-5d8b1cf85e8d" />
      <assembly name="Image Region" version="1.97.5327.41206" guid="63ddaef8-9a56-4ff6-938e-d590b638bf99" />
    </dependences>
  </settings>
  <region id="0" left="18" top="18" width="407" height="31" color="#000000" bgColor="#80ffff" fontSize="14">
    <text lang="eng">
      <p bold="true">Vectorise a matrix over a function</p>
    </text>
  </region>
  <region id="1" left="18" top="54" width="458" height="152" color="#000000" bgColor="#ffffff" fontSize="10">
    <text lang="eng">
      <p>Smath takes the matrix as the argument to the function 'f' where 'f' is algo name. It then proceeds elements wise, a native Smath functionality, hyperfast. All modules "Optimiz: Numeric"1. Vectorise(f,M) champion vectoriser.2. Scale(#,0,255) natural coding.3. xd(L,H,N) the champion discretiser.4. Sym(f(x,y),U,V)champion matrix compactor.[1, 2, 3, 4] can be collapsed upstream the WS.</p>
    </text>
  </region>
  <region id="2" left="567" top="162" width="96" height="26" color="#000000" bgColor="#ebebeb" fontSize="10">
    <math>
      <input>
        <e type="operand">t0</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="1">time</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="3" left="18" top="225" width="340" height="92" border="true" color="#000000" bgColor="#ffffff" fontSize="10">
    <math optimize="2">
      <input>
        <e type="operand">f</e>
        <e type="operand">M</e>
        <e type="function" args="2">Vectorise</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operand">M</e>
        <e type="function" preserve="true" args="1">rows</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">j</e>
        <e type="operand">1</e>
        <e type="operand">M</e>
        <e type="function" preserve="true" args="1">cols</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">V</e>
        <e type="operand">i</e>
        <e type="operand">j</e>
        <e type="function" preserve="true" args="3">el</e>
        <e type="operand">M</e>
        <e type="operand">i</e>
        <e type="operand">j</e>
        <e type="function" preserve="true" args="3">el</e>
        <e type="function" args="1">f</e>
        <e type="function" preserve="true" args="1">eval</e>
        <e type="operator" args="2">:</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="operand">V</e>
        <e type="operand">2</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="4">line</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="4" left="360" top="225" width="401" height="47" color="#000000" bgColor="#ffff80" fontSize="10">
    <math optimize="2" fractionType="none" decimalPlaces="4" exponentialThreshold="3">
      <description active="true" position="Top" lang="eng">
        <p>You need that one for scaling grayscale image</p>
      </description>
      <input>
        <e type="operand">M</e>
        <e type="operand">Min</e>
        <e type="operand">Max</e>
        <e type="function" args="3">Scale</e>
        <e type="operand">Max</e>
        <e type="operand">Min</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operand">M</e>
        <e type="operand">M</e>
        <e type="function" preserve="true" args="1">min</e>
        <e type="operator" args="2">-</e>
        <e type="operand">M</e>
        <e type="function" preserve="true" args="1">max</e>
        <e type="operand">M</e>
        <e type="function" preserve="true" args="1">min</e>
        <e type="operator" args="2">-</e>
        <e type="operator" args="2">/</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">*</e>
        <e type="operand">Min</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="5" left="18" top="333" width="275" height="123" border="true" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <description active="true" position="Top" lang="eng">
        <p>Mesh U, V  within the bounds L, H</p>
      </description>
      <input>
        <e type="operand">L</e>
        <e type="operand">H</e>
        <e type="operand">N</e>
        <e type="function" args="3">xd</e>
        <e type="operand">U</e>
        <e type="operand">0</e>
        <e type="operator" args="2">:</e>
        <e type="operand">dx</e>
        <e type="operand">H</e>
        <e type="operand">L</e>
        <e type="operator" args="2">-</e>
        <e type="operand">N</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">:</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operand">N</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">U</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">L</e>
        <e type="operand">dx</e>
        <e type="operand">i</e>
        <e type="operator" args="2">*</e>
        <e type="operand">dx</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="operand">U</e>
        <e type="operand">2</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="4">line</e>
        <e type="operand">3</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="5">line</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="6" left="342" top="360" width="52" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">L</e>
        <e type="operand">1</e>
        <e type="operator" args="1">-</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="7" left="423" top="360" width="43" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">H</e>
        <e type="operand">1</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="8" left="477" top="360" width="51" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">N</e>
        <e type="operand">32</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="9" left="342" top="387" width="119" height="26" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">U</e>
        <e type="operand">L</e>
        <e type="operand">H</e>
        <e type="operand">N</e>
        <e type="function" args="3">xd</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="10" left="477" top="387" width="43" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">V</e>
        <e type="operand">U</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="11" left="342" top="423" width="205" height="54" color="#000000" bgColor="#ffffff" fontSize="10">
    <math optimize="2" fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">x</e>
        <e type="operand">y</e>
        <e type="function" args="2">f</e>
        <e type="operand">1</e>
        <e type="operand">x</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operand">y</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">+</e>
        <e type="bracket">(</e>
        <e type="operator" args="1">-</e>
        <e type="operand">0.25</e>
        <e type="operator" args="2">/</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="12" left="18" top="513" width="405" height="169" border="true" color="#000000" bgColor="#ffffff" fontSize="10">
    <math optimize="2" fractionType="none" decimalPlaces="4">
      <description active="true" position="Top" lang="eng">
        <p>Generate the symmetric square matrix</p>
      </description>
      <input>
        <e type="operand">x</e>
        <e type="operand">y</e>
        <e type="function" args="2">f</e>
        <e type="operand">U</e>
        <e type="operand">V</e>
        <e type="function" args="3">Sym</e>
        <e type="operand">r</e>
        <e type="operand">1</e>
        <e type="operator" args="2">:</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operand">U</e>
        <e type="function" preserve="true" args="1">rows</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">c</e>
        <e type="operand">1</e>
        <e type="operator" args="2">:</e>
        <e type="operand">j</e>
        <e type="operand">1</e>
        <e type="operand">V</e>
        <e type="function" preserve="true" args="1">rows</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">M</e>
        <e type="operand">r</e>
        <e type="operand">c</e>
        <e type="function" preserve="true" args="3">el</e>
        <e type="operand">U</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">V</e>
        <e type="operand">j</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="function" args="2">f</e>
        <e type="function" preserve="true" args="1">eval</e>
        <e type="operator" args="2">:</e>
        <e type="operand">c</e>
        <e type="operand">c</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
        <e type="operand">2</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="4">line</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="operand">r</e>
        <e type="operand">r</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
        <e type="operand">3</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="5">line</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="operand">M</e>
        <e type="operand">3</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="5">line</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="13" left="441" top="540" width="172" height="28" color="#000000" bgColor="#ffffff" fontSize="10">
    <math fractionType="none" decimalPlaces="4">
      <input>
        <e type="operand">N</e>
        <e type="operand">x</e>
        <e type="operand">y</e>
        <e type="function" args="2">f</e>
        <e type="operand">U</e>
        <e type="operand">V</e>
        <e type="function" args="3">Sym</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="14" left="441" top="567" width="77" height="27" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">f</e>
        <e type="operand">x</e>
        <e type="function" preserve="true" args="1">sqrt</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="15" left="441" top="594" width="153" height="26" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">Z</e>
        <e type="operand">f</e>
        <e type="operand">N</e>
        <e type="function" args="2">Vectorise</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="16" left="441" top="630" width="161" height="26" color="#000000" bgColor="#ffffff" fontSize="10">
    <math optimize="2">
      <input>
        <e type="operand">N</e>
        <e type="operand">N</e>
        <e type="operand">0</e>
        <e type="operand">255</e>
        <e type="function" args="3">Scale</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="17" left="441" top="657" width="161" height="26" color="#000000" bgColor="#ffffff" fontSize="10">
    <math optimize="2">
      <input>
        <e type="operand">Z</e>
        <e type="operand">Z</e>
        <e type="operand">0</e>
        <e type="operand">255</e>
        <e type="function" args="3">Scale</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="18" left="441" top="684" width="170" height="26" color="#000000" bgColor="#ffff80" fontSize="10">
    <math optimize="2">
      <input>
        <e type="operand">image</e>
        <e type="operand">N</e>
        <e type="operand">Z</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="19" left="18" top="720" width="103" height="100" color="#000000" bgColor="#fff5ff" fontSize="10">
    <image>
      <imagefile filename="5u013hhu.png" lenght="1896" width="93" height="92" option="border=true;">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</imagefile>
      <input>
        <e type="operand">image</e>
      </input>
    </image>
  </region>
  <region id="20" left="567" top="738" width="175" height="26" color="#000000" bgColor="#ebebeb" fontSize="10">
    <math decimalPlaces="1">
      <input>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="1">time</e>
        <e type="operand">t0</e>
        <e type="operator" args="2">-</e>
      </input>
      <result action="numeric">
        <e type="operand">4.2</e>
        <e type="operand" style="unit">sec</e>
        <e type="operator" args="2">*</e>
      </result>
    </math>
  </region>
</regions>