﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<?application progid="SMath Studio Desktop" version="0.98.6179.21440"?>
<regions>
  <settings>
    <identity>
      <id>57580492-440a-49ce-9b1e-edb0c2540abc</id>
      <revision>28</revision>
    </identity>
    <calculation>
      <precision>4</precision>
      <exponentialThreshold>5</exponentialThreshold>
      <fractions>decimal</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>
    <dependencies>
      <assembly name="SMath Studio Desktop" version="0.98.6179.21440" guid="a37cba83-b69c-4c71-9992-55ff666763bd" />
      <assembly name="Math Region" version="0.98.6179.21440" guid="02f1ab51-215b-466e-a74d-5d8b1cf85e8d" />
      <assembly name="3D Plot Region (Chart3DLib)" version="0.1.5997.41808" guid="2427d808-1e5e-4ae0-88bf-bc271664a3ab" />
      <assembly name="Special Functions" version="1.11.6179.21442" guid="2814e667-4e12-48b1-8d51-194e480eabc5" />
      <assembly name="Text Region" version="1.10.6179.21446" guid="485d28c5-349a-48b6-93be-12a35a1c1e39" />
      <assembly name="Plot Region" version="1.9.6179.21450" guid="c451c2b5-798b-4f08-b9ec-b90963d1ddaa" />
    </dependencies>
  </settings>
  <region id="0" left="0" top="9" width="240" height="28" color="#000000" bgColor="#ffffff" fontSize="12">
    <text lang="rus">
      <p bold="true">Dome of Viviani Windows</p>
    </text>
  </region>
  <region id="1" left="0" top="54" width="711" height="56" color="#000000" bgColor="#ffffff" fontSize="10">
    <text lang="rus">
      <p>A Viviani curve (or Viviani window) is generated by the intersection of a sphere and a cylinder that passes through the center of  and is also tangent to  sphere.This Animation shows a dome made out of  of Viviani curves as the cylinder is rotated.</p>
    </text>
  </region>
  <region id="2" left="0" top="108" width="610" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <text lang="rus">
      <p>A real-life application of this can be seen at the Osaka Maritime Museum.</p>
    </text>
  </region>
  <region id="3" top="144" color="#000000" bgColor="#ffffff">
    <area collapsed="true" />
    <region id="4" left="18" top="207" width="196" height="67" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <description active="true" position="Right" lang="rus">
          <p>Поворот на угол α вокруг оси OX </p>
        </description>
        <input>
          <e type="operand">α</e>
          <e type="function" args="1">Ω1</e>
          <e type="operand">1</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">α</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">α</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operator" args="1">-</e>
          <e type="operand">0</e>
          <e type="operand">α</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operand">α</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">3</e>
          <e type="operand">3</e>
          <e type="function" preserve="true" args="11">mat</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="5" left="18" top="297" width="196" height="67" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <description active="true" position="Right" lang="rus">
          <p>Поворот на угол φ вокруг оси OY </p>
        </description>
        <input>
          <e type="operand">φ</e>
          <e type="function" args="1">Ω2</e>
          <e type="operand">φ</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">0</e>
          <e type="operand">φ</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operand">0</e>
          <e type="operand">1</e>
          <e type="operand">0</e>
          <e type="operand">φ</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operator" args="1">-</e>
          <e type="operand">0</e>
          <e type="operand">φ</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">3</e>
          <e type="operand">3</e>
          <e type="function" preserve="true" args="11">mat</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="6" left="18" top="387" width="196" height="67" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <description active="true" position="Right" lang="rus">
          <p>Поворот на угол ψ вокруг оси OZ </p>
        </description>
        <input>
          <e type="operand">ψ</e>
          <e type="function" args="1">Ω3</e>
          <e type="operand">ψ</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">ψ</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operator" args="1">-</e>
          <e type="operand">0</e>
          <e type="operand">ψ</e>
          <e type="function" preserve="true" args="1">sin</e>
          <e type="operand">ψ</e>
          <e type="function" preserve="true" args="1">cos</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">0</e>
          <e type="operand">1</e>
          <e type="operand">3</e>
          <e type="operand">3</e>
          <e type="function" preserve="true" args="11">mat</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="7" left="18" top="459" width="56" height="41" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <input>
          <e type="operand">α</e>
          <e type="operand">π</e>
          <e type="operator" args="1">-</e>
          <e type="operand">5</e>
          <e type="operator" args="2">/</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="8" left="81" top="459" width="47" height="41" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <input>
          <e type="operand">φ</e>
          <e type="operand">π</e>
          <e type="operand">8</e>
          <e type="operator" args="2">/</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="9" left="153" top="459" width="83" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <input>
          <e type="operand">ψ</e>
          <e type="operand">0.85</e>
          <e type="operand">π</e>
          <e type="operator" args="2">*</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="10" left="18" top="504" width="202" height="28" color="#000000" bgColor="#ffffff" fontSize="10">
      <math>
        <description active="true" position="Right" lang="rus">
          <p>Матрица поворота  вокруг  трех осей           </p>
        </description>
        <input>
          <e type="operand">γ</e>
          <e type="operand">α</e>
          <e type="function" args="1">Ω1</e>
          <e type="operand">φ</e>
          <e type="function" args="1">Ω2</e>
          <e type="operator" args="2">*</e>
          <e type="operand">ψ</e>
          <e type="function" args="1">Ω3</e>
          <e type="operator" args="2">*</e>
          <e type="function" preserve="true" args="1">eval</e>
          <e type="operator" args="2">:</e>
        </input>
      </math>
    </region>
    <region id="11" top="558" color="#000000" bgColor="#ffffff">
      <area terminator="true" />
    </region>
  </region>
  <region id="12" left="0" top="612" width="51" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">n</e>
        <e type="operand">60</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="13" left="90" top="612" width="51" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">N</e>
        <e type="operand">30</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="14" left="216" top="612" width="70" height="41" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">Δt</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operand">n</e>
        <e type="operator" args="2">/</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="15" left="360" top="612" width="70" height="41" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">Δφ</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operand">N</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="0" top="675" width="310" height="219" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <description active="true" position="Top" lang="rus">
        <p>Parametric equations</p>
      </description>
      <input>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operand">n</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operand">x</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">1</e>
        <e type="operand">Δt</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">cos</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
        <e type="operand">y</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">Δt</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">*</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operator" args="2">:</e>
        <e type="operand">z</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">2</e>
        <e type="operand">1</e>
        <e type="operand">2</e>
        <e type="operator" args="2">/</e>
        <e type="operand">Δt</e>
        <e type="operator" args="2">*</e>
        <e type="operand">i</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</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>
        <e type="operand">s</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand" style="string">.</e>
        <e type="operator" args="2">:</e>
        <e type="operand">ras</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand">10</e>
        <e type="operator" args="2">:</e>
        <e type="operand">c</e>
        <e type="operand">i</e>
        <e type="function" preserve="true" args="2">el</e>
        <e type="operand" style="string">blue</e>
        <e type="operator" args="2">:</e>
        <e type="operand">6</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="8">line</e>
        <e type="function" preserve="true" args="3">for</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">x</e>
        <e type="operand">y</e>
        <e type="operand">z</e>
        <e type="function" preserve="true" args="3">augment</e>
        <e type="operand">Δφ</e>
        <e type="operand">t</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">*</e>
        <e type="function" args="1">Ω3</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">2</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="4">line</e>
      </input>
    </math>
  </region>
  <region id="17" left="27" top="963" width="209" height="69" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">u</e>
        <e type="operand">v</e>
        <e type="function" args="2">Fs</e>
        <e type="operand">2</e>
        <e type="operand">u</e>
        <e type="function" preserve="true" args="1">cos</e>
        <e type="operator" args="2">*</e>
        <e type="operand">v</e>
        <e type="function" preserve="true" args="1">cos</e>
        <e type="operator" args="2">*</e>
        <e type="operand">2</e>
        <e type="operand">u</e>
        <e type="function" preserve="true" args="1">cos</e>
        <e type="operator" args="2">*</e>
        <e type="operand">v</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operator" args="2">*</e>
        <e type="operand">2</e>
        <e type="operand">u</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operator" args="2">*</e>
        <e type="operand">3</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="5">mat</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="18" left="297" top="963" width="163" height="67" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">u</e>
        <e type="operand">v</e>
        <e type="function" args="2">Fc</e>
        <e type="operand">v</e>
        <e type="function" preserve="true" args="1">cos</e>
        <e type="operand">1</e>
        <e type="operator" args="2">+</e>
        <e type="operand">v</e>
        <e type="function" preserve="true" args="1">sin</e>
        <e type="operand">u</e>
        <e type="operand">3</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="5">mat</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="19" left="18" top="1044" width="394" height="28" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">S</e>
        <e type="operand">u</e>
        <e type="operand">v</e>
        <e type="function" args="2">Fs</e>
        <e type="operand">0</e>
        <e type="operand">1</e>
        <e type="operand">π</e>
        <e type="operator" args="2">*</e>
        <e type="operand">0</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operator" args="2">*</e>
        <e type="operand">20</e>
        <e type="operand">20</e>
        <e type="function" preserve="true" args="7">CreateMesh</e>
        <e type="operand">γ</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="20" left="18" top="1089" width="494" height="28" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">t</e>
        <e type="function" args="1">C</e>
        <e type="operand">u</e>
        <e type="operand">v</e>
        <e type="function" args="2">Fc</e>
        <e type="operand">0</e>
        <e type="operand">2</e>
        <e type="operand">0</e>
        <e type="operand">2</e>
        <e type="operand">π</e>
        <e type="operator" args="2">*</e>
        <e type="operand">10</e>
        <e type="operand">20</e>
        <e type="function" preserve="true" args="7">CreateMesh</e>
        <e type="operand">Δφ</e>
        <e type="operand">t</e>
        <e type="operand">1</e>
        <e type="operator" args="2">-</e>
        <e type="bracket">(</e>
        <e type="operator" args="2">*</e>
        <e type="function" args="1">Ω3</e>
        <e type="operator" args="2">*</e>
        <e type="operand">γ</e>
        <e type="operator" args="2">*</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="21" left="36" top="1125" width="74" height="24" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">τ</e>
        <e type="operand">1</e>
        <e type="operand">N</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="22" left="18" top="1152" width="300" height="220" color="#000000" bgColor="#ffffff" fontSize="10" showInputData="False">
    <plot grid="false" axes="false" type="2d" render="lines" scale_x="5.87491782599762" scale_y="5.87491782599762" scale_z="5.87491782599762" rotate_x="0" rotate_y="0" rotate_z="0" transpose_x="6" transpose_y="-33" transpose_z="0" animate="τ" frameRate="20">
      <input>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">s</e>
        <e type="operand">ras</e>
        <e type="operand">c</e>
        <e type="function" preserve="true" args="3">augment</e>
        <e type="function" preserve="true" args="3">augment</e>
        <e type="operand" style="string" />
        <e type="operand" style="string" />
        <e type="operand">t</e>
        <e type="function" args="1">C</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">t</e>
        <e type="function" args="1">C</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="operand">S</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">S</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="operand">5</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="7">sys</e>
      </input>
    </plot>
  </region>
  <region id="23" left="27" top="1449" width="111" height="26" color="#000000" bgColor="#ffffff" fontSize="10">
    <math>
      <input>
        <e type="operand">τ</e>
        <e type="operand">3</e>
        <e type="operand">N</e>
        <e type="operand">16</e>
        <e type="operator" args="2">+</e>
        <e type="bracket">(</e>
        <e type="function" preserve="true" args="2">range</e>
        <e type="operator" args="2">:</e>
      </input>
    </math>
  </region>
  <region id="24" left="0" top="1494" width="300" height="220" color="#000000" bgColor="#ffffff" fontSize="10" showInputData="False">
    <plot grid="false" axes="false" type="2d" render="lines" scale_x="5.87491782599762" scale_y="5.87491782599762" scale_z="5.87491782599762" rotate_x="0" rotate_y="0" rotate_z="0" transpose_x="24" transpose_y="-21" transpose_z="0" animate="τ" frameRate="20">
      <description active="false" position="Top" lang="rus">
        <p>Dome of Viviani Windows</p>
      </description>
      <input>
        <e type="operand">t</e>
        <e type="operand">N</e>
        <e type="operand">3</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">&gt;</e>
        <e type="bracket">(</e>
        <e type="operand">t</e>
        <e type="operand">N</e>
        <e type="operand">3</e>
        <e type="operator" args="2">+</e>
        <e type="operator" args="2">:</e>
        <e type="operand">t</e>
        <e type="operand">t</e>
        <e type="operator" args="2">:</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="operand" style="string" />
        <e type="operand" style="string" />
        <e type="operand" style="string" />
        <e type="operand">S</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">S</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="operand" style="string" />
        <e type="operand">t</e>
        <e type="operand">3</e>
        <e type="operator" args="2">≡</e>
        <e type="operand">L</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="operator" args="2">:</e>
        <e type="operand">L</e>
        <e type="operand">L</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="operand">t</e>
        <e type="function" args="1">Vγ</e>
        <e type="operand">2</e>
        <e type="function" preserve="true" args="2">col</e>
        <e type="function" preserve="true" args="2">augment</e>
        <e type="function" preserve="true" args="2">stack</e>
        <e type="operator" args="2">:</e>
        <e type="function" preserve="true" args="3">if</e>
        <e type="operand">7</e>
        <e type="operand">1</e>
        <e type="function" preserve="true" args="9">sys</e>
      </input>
    </plot>
  </region>
</regions>