|
| 1 | +<html> |
| 2 | +<head> |
| 3 | +<meta charset="utf-8"> |
| 4 | +<meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| 5 | +<meta name="Author" content="Dietmar Gerald Schrausser"> |
| 6 | + |
| 7 | +<title> |
| 8 | +ConsoleApp_Integral/README |
| 9 | +</title> |
| 10 | + |
| 11 | +</head> |
| 12 | +<body style="font-family:calibri;font-size:85%;background-color:#eceff1;color:#37474f"> |
| 13 | + |
| 14 | +<style> |
| 15 | +a {color: #78909c; } |
| 16 | +a:visited {color: #78909c;} |
| 17 | +</style> |
| 18 | +<h1 id="consoleapp_integral">ConsoleApp_Integral</h1> |
| 19 | +<p>Console applications for <em>integral</em> and <em>interpolation</em> (German).</p> |
| 20 | +<h2 id="romi">ROMI</h2> |
| 21 | +<p>Approximiert (a) Flächen- oder (b) Kurven-Integrale</p> |
| 22 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><munderover><mo data-mjx-texclass="OP">∫</mo><mi>a</mi><mi>b</mi></munderover><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mi>d</mi><mi>x</mi></math></p> |
| 23 | +<p>mittels Romberg Methode, dabei |
| 24 | +ggf. Dateiausgabe nach <code>romi.txt</code> von Funkionsmatrix</p> |
| 25 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">y</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow><mo>,</mo></math></p> |
| 26 | +<p>bei</p> |
| 27 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mi>x</mi><mo>=</mo><mfrac><mrow><mi>x</mi><mo>+</mo><mi>d</mi></mrow><mn>2</mn></mfrac><mo>,</mo><mi>y</mi><mo>=</mo><munderover><mo data-mjx-texclass="OP">∫</mo><mi>a</mi><mi>b</mi></munderover><mrow data-mjx-texclass="ORD"><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mi>d</mi><mi>x</mi></mrow><mo>.</mo></math></p> |
| 28 | +<ul> |
| 29 | +<li>Ausführung von <code>ROMI.bat</code>:</li> |
| 30 | +<li>Definition von <math display="inline"><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo></math> in <code>ROMI.h</code>;</li> |
| 31 | +<li>Compilieren von <code>ROMI.c</code>;</li> |
| 32 | +<li>Ausführung von <code>ROMI.exe</code>.</li> |
| 33 | +</ul> |
| 34 | +<p>Handhabung</p> |
| 35 | +<pre><code>ROMI [a] [b] [d] [m] [F] |
| 36 | +[a] ..... Integrations Minimum a |
| 37 | +[b] ......Integrations Maximum b |
| 38 | +[d] ......Delta d |
| 39 | +[m] ......Modus: (0)Flaechen.I (1)Kurven.I |
| 40 | +[F] ......Funktionsmatrix: (0)keine (1)romi.txt |
| 41 | +</code></pre> |
| 42 | +<h2 id="rome">ROME</h2> |
| 43 | +<p>Approximiert das Integral <math display="inline"><munderover><mo data-mjx-texclass="OP">∫</mo><mi>a</mi><mi>b</mi></munderover><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mi>d</mi><mi>x</mi></math> |
| 44 | + mittels <em>Romberg-Extrapolation</em> |
| 45 | +(ROMBERG Integration nach Meyberg und Vachenauer, <a href="https://doi.org/10.1007/978-3-642-56654-7_4">2001</a>, S. 209).</p> |
| 46 | +<ul> |
| 47 | +<li>Ausführung von <code>ROME.bat</code>:</li> |
| 48 | +<li>Definition von <math display="inline"><mi>f</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo></math> in <code>ROME.h</code>;</li> |
| 49 | +<li>Compilieren von <code>ROME.c</code>;</li> |
| 50 | +<li>Ausführung von <code>ROME.exe</code>.</li> |
| 51 | +</ul> |
| 52 | +<p>Handhabung</p> |
| 53 | +<pre><code>ROME [a] [b] |
| 54 | +[a] ....... Integrations Minimum a |
| 55 | +[b] ....... Integrations Maximum b |
| 56 | +</code></pre> |
| 57 | +<h2 id="kusi">KUSI</h2> |
| 58 | +<p>Kubische Spline Interpolation: Berechnung der Koeffizientenmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">A</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">b</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">c</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">d</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> sowie <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">s</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> zu einer (empirischen) Funktionsmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">y</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math>, wobei</p> |
| 59 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><msub><mi>s</mi><mi>i</mi></msub><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msub><mi>y</mi><mi>i</mi></msub><mo>+</mo><msub><mi>b</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><mo stretchy="false">)</mo><mo>+</mo><msub><mi>c</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><msup><mo stretchy="false">)</mo><mn>2</mn></msup><mo>+</mo><msub><mi>d</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><msup><mo stretchy="false">)</mo><mn>3</mn></msup><mo>;</mo><mi>i</mi><mo>=</mo><mn>0</mn><mo>,</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>n</mi><mo>−</mo><mn>1.</mn></math></p> |
| 60 | +<ul> |
| 61 | +<li>Übernahme einer ASCII Funktionsmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi></mrow></math>;</li> |
| 62 | +<li>Ausgabe der ASCII Koeffizientenmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">A</mi></mrow></math> (<code>KUSI.txt</code>);</li> |
| 63 | +<li>Berechnung von <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">s</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> über die Interpolations-Funktion.</li> |
| 64 | +</ul> |
| 65 | +<p>Handhabung</p> |
| 66 | +<pre><code>KUSI [f] [x] |
| 67 | +[f] ......... Funktionsmatrix Datei (F) |
| 68 | +[x] ......... Funktionswert x |
| 69 | +</code></pre> |
| 70 | +<h2 id="kusf">KUSF</h2> |
| 71 | +<p>Kubische Spline Funktion: Berechnung einer Funktionsmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">p</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> zu Koeffizientenmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">A</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">b</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">c</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">d</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math>, wobei</p> |
| 72 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><msub><mi>s</mi><mi>i</mi></msub><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msub><mi>y</mi><mi>i</mi></msub><mo>+</mo><msub><mi>b</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><mo stretchy="false">)</mo><mo>+</mo><msub><mi>c</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><msup><mo stretchy="false">)</mo><mn>2</mn></msup><mo>+</mo><msub><mi>d</mi><mi>i</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><msub><mi>x</mi><mi>i</mi></msub><msup><mo stretchy="false">)</mo><mn>3</mn></msup><mo>;</mo><mi>i</mi><mo>=</mo><mn>0</mn><mo>,</mo><mn>1</mn><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><mi>n</mi><mo>−</mo><mn>1.</mn></math></p> |
| 73 | +<ul> |
| 74 | +<li>Übernahme einer ASCII Funktionsmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi></mrow></math>;</li> |
| 75 | +<li>Übernahme der ASCII Koeffizientenmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">A</mi></mrow></math> (<code>KUSI.txt</code>);</li> |
| 76 | +<li>Ausgabe der ASCII Funktionsmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">S</mi></mrow></math> (<code>KUSF.txt</code>).</li> |
| 77 | +</ul> |
| 78 | +<p>Handhabung</p> |
| 79 | +<pre><code>KUSF [f] [a] [b] [d] |
| 80 | +[f] ......... Funktionsmatrix Datei (F) |
| 81 | +[a] ......... (x) Minimum |
| 82 | +[b] ......... (x) Maximum |
| 83 | +[d] ......... Intervall d |
| 84 | +</code></pre> |
| 85 | +<h2 id="nwti">NWTI</h2> |
| 86 | +<p>Newton Interpolation: Berechnung des Koeffizientenvektors <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">a</mi></mrow></math> sowie <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">p</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> zu einer (empirischen) Funktionsmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">y</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math>, wobei</p> |
| 87 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mi>p</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msub><mi>a</mi><mn>0</mn></msub><mo>+</mo><msub><mi>a</mi><mn>1</mn></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>+</mo><msub><mi>a</mi><mn>2</mn></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>2</mn><mo stretchy="false">)</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>a</mi><mi>n</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>2</mn><mo stretchy="false">)</mo><mo>·</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mi>n</mi><mo stretchy="false">)</mo><mo>.</mo></math></p> |
| 88 | +<ul> |
| 89 | +<li>Übernahme einer ASCII Funktionsmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi></mrow></math>;</li> |
| 90 | +<li>Ausgabe einer ASCII Koeffizientenvektor Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">a</mi></mrow></math> (<code>nwti.txt</code>);</li> |
| 91 | +<li>Berechnung von <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">p</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> über das Interpolations-Polynom.</li> |
| 92 | +</ul> |
| 93 | +<p>Handhabung</p> |
| 94 | +<pre><code>NWTI [f] [x] |
| 95 | +[f] ......... Funktionsmatrix Datei (F) |
| 96 | +[x] ......... Funktionswert x |
| 97 | +</code></pre> |
| 98 | +<h2 id="nwtp">NWTP</h2> |
| 99 | +<p>Newton Interpolations Polynom: Berechnung einer Funktionsmatrix <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi><mo mathvariant="bold-italic">=</mo><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mrow data-mjx-texclass="ORD"><mo mathvariant="bold-italic" stretchy="false">|</mo></mrow><mi mathvariant="bold-italic">p</mi><mo mathvariant="bold-italic" stretchy="false">(</mo><mi mathvariant="bold-italic">x</mi><mo mathvariant="bold-italic" stretchy="false">)</mo><mo mathvariant="bold-italic" stretchy="false">)</mo></mrow></math> zu Koeffizientenvektor <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">a</mi></mrow></math>, wobei</p> |
| 100 | +<p><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><mi>p</mi><mo stretchy="false">(</mo><mi>x</mi><mo stretchy="false">)</mo><mo>=</mo><msub><mi>a</mi><mn>0</mn></msub><mo>+</mo><msub><mi>a</mi><mn>1</mn></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>+</mo><msub><mi>a</mi><mn>2</mn></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>2</mn><mo stretchy="false">)</mo><mo>.</mo><mo>.</mo><mo>.</mo><msub><mi>a</mi><mi>n</mi></msub><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>1</mn><mo stretchy="false">)</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mn>2</mn><mo stretchy="false">)</mo><mo>·</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>·</mo><mo stretchy="false">(</mo><mi>x</mi><mo>−</mo><mi>n</mi><mo stretchy="false">)</mo><mo>.</mo></math></p> |
| 101 | +<ul> |
| 102 | +<li>Übernahme der ASCII Koeffizientenvektor Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">a</mi></mrow></math> (<code>nwti.txt</code>);</li> |
| 103 | +<li>Ausgabe der ASCII Funktionsmatrix Datei <math display="inline"><mrow data-mjx-texclass="ORD"><mi mathvariant="bold-italic">F</mi></mrow></math> (<code>nwtp.txt</code>).</li> |
| 104 | +</ul> |
| 105 | +<p>Handhabung</p> |
| 106 | +<pre><code>NWTP [a] [b] [d] |
| 107 | +[a] ......... (x) Minimum |
| 108 | +[b] ......... (x) Maximum |
| 109 | +[d] ......... Intervall d |
| 110 | +</code></pre> |
| 111 | +<br> |
| 112 | +<h2 id="references">References</h2> |
| 113 | +<p>Meyberg, K., & Vachenauer, P. (2001). Integration. In <em>Höhere Mathematik 1</em>. Springer-Lehrbuch. Springer, Berlin, Heidelberg. <a href="https://doi.org/10.1007/978-3-642-56654-7_4">https://doi.org/10.1007/978-3-642-56654-7_4</a></p> |
| 114 | + |
| 115 | +<hr WIDTH="75%"> |
| 116 | +<blockquote ALIGN="CENTER"> |
| 117 | +<center> |
| 118 | +<a href="https://github.com/Schrausser/ConsoleApp_Integral"> |
| 119 | +ConsoleApp_Integral |
| 120 | +</a> |
| 121 | +<br><font color="#999999"><font size=-1> |
| 122 | +<a |
| 123 | +href="https://orcid.org/0000-0002-4924-8280"> |
| 124 | +Dietmar Gerald Schrausser |
| 125 | +</a> |
| 126 | +<p>22.07.2025</p> |
| 127 | +</font></font> |
| 128 | +</center> |
| 129 | +</blockquote> |
| 130 | + |
| 131 | +</body> |
| 132 | +</html> |
0 commit comments