﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<?application progid="SMath Studio" version="0.90"?>
<regions>
  <settings>
    <editable>true</editable>
    <metadata lang="rus">
      <title>Аппроксимация локальным экспоненциальным сплайном</title>
      <author>Шевалдин В. Т., Мезенцев В.Н.</author>
      <description>Аппроксимация функции при помощи локальных экспоненциальных сплайнов</description>
      <keywords>сплайн, аппроксимация</keywords>
    </metadata>
    <calculation>
      <precision>2</precision>
      <fractions>decimal</fractions>
      <recalculation>false</recalculation>
    </calculation>
    <dependences>
      <assembly name="SMath Studio" version="0.90" guid="a37cba83-b69c-4c71-9992-55ff666763bd" />
      <assembly name="Special Functions" version="1.2.3926.27956" guid="2814e667-4e12-48b1-8d51-194e480eabc5" />
    </dependences>
  </settings>
  <region id="0" left="0" top="18" width="552" height="56" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>Аппроксимация локальными экспоненциальными сплайнами (тип II)Основа: Работы Шевалдина В. Т. (Мат.-мех. факультет, Уральский госуниверситет им. А. М. Горького)</p>
    </text>
  </region>
  <region id="1" left="9" top="99" width="349" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>Дано. Тестовая (аппроксимируемая) функция</p>
    </text>
  </region>
  <region id="2" left="9" top="135" width="95" height="33" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">Δt</e>
        <e type="operand">1</e>
        <e type="operand">10</e>
        <e type="operand">3</e>
        <e type="operator" args="1">-</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="3" left="117" top="144" width="85" height="32" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">t.max</e>
        <e type="operand">0.1</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="4" left="9" top="180" width="51" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">N</e>
        <e type="operand">24</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="5" left="90" top="180" width="324" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>- количество отсчётов тестовой функции</p>
    </text>
  </region>
  <region id="6" left="0" top="207" width="72" height="49" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">h</e>
        <e type="operand">t.max</e>
        <e type="operand">N</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="7" left="90" top="225" width="135" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>- величина шага</p>
    </text>
  </region>
  <region id="8" left="0" top="261" width="60" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">β</e>
        <e type="operand">200</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="9" left="90" top="261" width="160" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>- параметр сплайна</p>
    </text>
  </region>
  <region id="10" left="189" top="306" width="245" height="51" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">f</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operator" args="2">*</e>
        <e type="operand">4</e>
        <e type="operator" args="2">*</e>
        <e type="operand">t.max</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operator" args="2">*</e>
        <e type="operand">t.max</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="11" left="9" top="369" width="617" height="142" color="#000000" background-color="#ffffff" font-size="10">
    <plot type="2d" render="lines" scale_x="2.06914866998438" scale_y="256.660725561818" scale_z="1" rotate_x="0" rotate_y="0" rotate_z="0" transpose_x="-409" transpose_y="0" transpose_z="0">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">f</e>
      </input>
    </plot>
  </region>
  <region id="12" left="9" top="549" width="431" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>Формируем локальный экспоненциальны сплайн типа II:</p>
    </text>
  </region>
  <region id="13" left="0" top="576" width="207" height="45" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">ε</e>
        <e type="operand">1</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operand">1</e>
        <e type="operand">h</e>
        <e type="operand">β</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">/</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="operator" args="2">/</e>
        <e type="function" preserve="true" args="1">ln</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="14" left="225" top="585" width="131" height="33" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">ε</e>
      </input>
      <result action="numeric">
        <e type="operand">3.45</e>
        <e type="operand">10</e>
        <e type="operand">2</e>
        <e type="operator" args="1">-</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="1">-</e>
      </result>
    </math>
  </region>
  <region id="15" left="0" top="621" width="143" height="45" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">m</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</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="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="16" left="171" top="630" width="113" height="33" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">m</e>
      </input>
      <result action="numeric">
        <e type="operand">3.69</e>
        <e type="operand">10</e>
        <e type="operand">4</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">*</e>
      </result>
    </math>
  </region>
  <region id="17" left="18" top="684" width="569" height="368" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">B</e>
        <e type="operand">m</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="1">-</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operator" args="2">≤</e>
        <e type="bracket">(</e>
        <e type="operand">x</e>
        <e type="operand">h</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="1">-</e>
        <e type="operator" args="2">&lt;</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">&amp;</e>
        <e type="operand">β</e>
        <e type="operand">x</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</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="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="operand">β</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">+</e>
        <e type="operand">β</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">-</e>
        <e type="operand">h</e>
        <e type="operator" args="1">-</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operator" args="2">≤</e>
        <e type="bracket">(</e>
        <e type="operand">x</e>
        <e type="operand">h</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">&lt;</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">&amp;</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="operand">β</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">/</e>
        <e type="operand">h</e>
        <e type="operand">2</e>
        <e type="operand">β</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">/</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</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="operand">x</e>
        <e type="operand">β</e>
        <e type="operator" args="2">/</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</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="operand">2</e>
        <e type="operand">β</e>
        <e type="operand">x</e>
        <e type="operand">h</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="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operator" args="2">*</e>
        <e type="operand">β</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">-</e>
        <e type="operand">h</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operator" args="2">≤</e>
        <e type="bracket">(</e>
        <e type="operand">x</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</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="2">&amp;</e>
        <e type="operand">β</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">β</e>
        <e type="operand">x</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</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="2">*</e>
        <e type="function" preserve="true" args="1">exp</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="operand">β</e>
        <e type="operand">2</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">/</e>
        <e type="operand">x</e>
        <e type="operand">3</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">-</e>
        <e type="operand">β</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">0</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">←</e>
      </input>
    </math>
  </region>
  <region id="18" left="9" top="1080" width="551" height="233" color="#000000" background-color="#ffffff" font-size="10">
    <plot type="2d" render="lines" scale_x="14.8574291628039" scale_y="2566.87095442116" scale_z="1" rotate_x="0" rotate_y="0" rotate_z="0" transpose_x="4" transpose_y="-109" transpose_z="0">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">B</e>
      </input>
    </plot>
  </region>
  <region id="19" left="0" top="1359" width="332" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>Дискретизируем функцию (берём отсчёты):</p>
    </text>
  </region>
  <region id="20" left="0" top="1386" width="122" height="33" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">h</e>
      </input>
      <result action="numeric">
        <e type="operand">4.17</e>
        <e type="operand">10</e>
        <e type="operand">3</e>
        <e type="operator" args="1">-</e>
        <e type="operator" args="2">^</e>
        <e type="operator" args="2">*</e>
      </result>
    </math>
  </region>
  <region id="21" left="126" top="1395" width="61" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <math optimize="1">
      <input>
        <e type="operand">N</e>
      </input>
      <result action="numeric">
        <e type="operand">24</e>
      </result>
    </math>
  </region>
  <region id="22" left="9" top="1422" width="214" height="49" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">ii</e>
        <e type="operand">1</e>
        <e type="operator" args="2">←</e>
        <e type="operand">ii</e>
        <e type="operand">N</e>
        <e type="operator" args="2">≤</e>
        <e type="operand">ii</e>
        <e type="operand">ii</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">←</e>
        <e type="operand">y</e>
        <e type="operand">ii</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">ii</e>
        <e type="operand">ε</e>
        <e type="operator" args="2">+</e>
        <e type="bracket">(</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="function" args="1">f</e>
        <e type="operator" args="2">←</e>
        <e type="function" preserve="true" args="4">for</e>
      </input>
    </math>
  </region>
  <region id="23" left="0" top="1485" width="143" height="24" color="#000000" background-color="#ffffff" font-size="10">
    <text lang="rus">
      <p>Вычисляем сплайн</p>
    </text>
  </region>
  <region id="24" left="9" top="1521" width="525" height="161" color="#000000" background-color="#ffffff" font-size="10">
    <math fraction-type="none" optimize="1">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">s</e>
        <e type="operand">k</e>
        <e type="operand">x</e>
        <e type="operand">h</e>
        <e type="operator" args="2">/</e>
        <e type="operand">0</e>
        <e type="function" preserve="true" args="2">round</e>
        <e type="operator" args="2">←</e>
        <e type="operand">k</e>
        <e type="operand">2</e>
        <e type="operator" args="2">≥</e>
        <e type="bracket">(</e>
        <e type="operand">k</e>
        <e type="operand">tmax</e>
        <e type="operand">h</e>
        <e type="operator" args="2">/</e>
        <e type="operand">0</e>
        <e type="function" preserve="true" args="2">round</e>
        <e type="operand">2</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">&lt;</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">&amp;</e>
        <e type="operand">вых</e>
        <e type="operand">y</e>
        <e type="operand">k</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">x</e>
        <e type="operand">k</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">-</e>
        <e type="function" args="1">B</e>
        <e type="operator" args="2">*</e>
        <e type="operand">y</e>
        <e type="operand">k</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">x</e>
        <e type="operand">k</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">-</e>
        <e type="function" args="1">B</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">+</e>
        <e type="operand">y</e>
        <e type="operand">k</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">x</e>
        <e type="operand">k</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="bracket">(</e>
        <e type="operand">h</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">-</e>
        <e type="function" args="1">B</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">←</e>
        <e type="operand">вых</e>
        <e type="operand">0</e>
        <e type="operator" args="2">←</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="operand">вых</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="25" left="9" top="1701" width="751" height="233" color="#000000" background-color="#ffffff" font-size="10">
    <plot type="2d" render="lines" scale_x="5.07908036045808" scale_y="316.865093286195" scale_z="1" rotate_x="0" rotate_y="0" rotate_z="0" transpose_x="-349" transpose_y="10" transpose_z="0">
      <input>
        <e type="operand">x</e>
        <e type="function" args="1">f</e>
        <e type="operand">x</e>
        <e type="function" args="1">s</e>
        <e type="operand">2</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="4">sys</e>
      </input>
    </plot>
  </region>
</regions>