File: ch11s08.html

package info (click to toggle)
genius 1.0.27-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 25,308 kB
  • sloc: ansic: 75,620; xml: 71,565; sh: 4,445; makefile: 1,927; lex: 523; yacc: 298; perl: 54
file content (5 lines) | stat: -rw-r--r-- 21,009 bytes parent folder | download
1
2
3
4
5
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Práce s maticemi</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><link rel="home" href="index.html" title="Příručka k aplikaci Genius"><link rel="up" href="ch11.html" title="Chapter 11. Seznam funkcí GEL"><link rel="prev" href="ch11s07.html" title="Teorie čísel"><link rel="next" href="ch11s09.html" title="Lineární algebra"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Práce s maticemi</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s07.html">Prev</a> </td><th width="60%" align="center">Chapter 11. Seznam funkcí GEL</th><td width="20%" align="right"> <a accesskey="n" href="ch11s09.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="genius-gel-function-list-matrix"></a>Práce s maticemi</h2></div></div></div><div class="variablelist"><dl class="variablelist"><dt><span class="term"><a name="gel-function-AppendElement"></a>AppendElement</span></dt><dd><pre class="synopsis">AppendElement (v,prvek)</pre><p>Přidá prvek do vektoru a vrátí vektor. Neprovádí se žádné rozšíření. Když začínáte z <code class="constant">null</code> nebo matice 1 krát 1, vytvoří se normálně řádkový vektor, ale když je předán sloupcový vektor, bude správně použit jako sloupcový vektor.</p></dd><dt><span class="term"><a name="gel-function-ApplyOverMatrix"></a>ApplyOverMatrix</span></dt><dd><pre class="synopsis">ApplyOverMatrix (a,fce)</pre><p>Použít funkci na všechny prvky matice a vrátit matici výsledků.</p></dd><dt><span class="term"><a name="gel-function-ApplyOverMatrix2"></a>ApplyOverMatrix2</span></dt><dd><pre class="synopsis">ApplyOverMatrix2 (a,b,fce)</pre><p>Použít funkci na všechny prvky 2 matic (nebo 1 hodnoty a 1 matice) a vrátit matici výsledků.</p></dd><dt><span class="term"><a name="gel-function-ColumnsOf"></a>ColumnsOf</span></dt><dd><pre class="synopsis">ColumnsOf (M)</pre><p>Vrátit sloupce matice jako vodorovný vektor.</p></dd><dt><span class="term"><a name="gel-function-ComplementSubmatrix"></a>ComplementSubmatrix</span></dt><dd><pre class="synopsis">ComplementSubmatrix (m,r,c)</pre><p>Odstranit sloupec (či slupce) a řádek (či řádky) z matice.</p></dd><dt><span class="term"><a name="gel-function-CompoundMatrix"></a>CompoundMatrix</span></dt><dd><pre class="synopsis">CompoundMatrix (k,A)</pre><p>Spočítat <code class="varname">k</code>-tou složenou matici matice A.</p></dd><dt><span class="term"><a name="gel-function-CountZeroColumns"></a>CountZeroColumns</span></dt><dd><pre class="synopsis">CountZeroColumns (M)</pre><p>Spočítat počet nulových sloupců v matici. Například, jakmile zredukujete sloupce matice, můžete to využít k nalezení nulovosti. Viz <a class="link" href="ch11s09.html#gel-function-cref"><code class="function">cref</code></a> a <a class="link" href="ch11s09.html#gel-function-Nullity"><code class="function">Nullity</code></a>.</p></dd><dt><span class="term"><a name="gel-function-DeleteColumn"></a>DeleteColumn</span></dt><dd><pre class="synopsis">DeleteColumn (M,sloupec)</pre><p>Smazat sloupec matice.</p></dd><dt><span class="term"><a name="gel-function-DeleteRow"></a>DeleteRow</span></dt><dd><pre class="synopsis">DeleteRow (M,radek)</pre><p>Smazat řádek matice.</p></dd><dt><span class="term"><a name="gel-function-DiagonalOf"></a>DiagonalOf</span></dt><dd><pre class="synopsis">DiagonalOf (M)</pre><p>Získat diagonální prvky matice jako sloupcový vektor.</p><p>Více informací najdete v encyklopedii <a class="ulink" href="https://cs.wikipedia.org/wiki/Diagon%C3%A1ln%C3%AD_matice" target="_top">Wikipedia</a>.</p></dd><dt><span class="term"><a name="gel-function-DotProduct"></a>DotProduct</span></dt><dd><pre class="synopsis">DotProduct (u,v)</pre><p>Získat skalární součin dvou vektorů. Vektory musí mít stejnou velikost. Nepřijímají se konjugované vektory, protože jde o bilineární formu, i když pracuje i s komplexními čísly. Jedná se o bilineární skalární součin, ne půldruhý lineární (seskvilineární). Pro ten slouží funkce <a class="link" href="ch11s08.html#gel-function-HermitianProduct">HermitianProduct</a></p><p>Více informací najdete v encyklopediích <a class="ulink" href="http://planetmath.org/DotProduct" target="_top">Planetmath</a> (text je v angličtině) a <a class="ulink" href="https://cs.wikipedia.org/wiki/Skal%C3%A1rn%C3%AD_sou%C4%8Din" target="_top">Wikipedia</a>.</p></dd><dt><span class="term"><a name="gel-function-ExpandMatrix"></a>ExpandMatrix</span></dt><dd><pre class="synopsis">ExpandMatrix (M)</pre><p>Rozšířit matici, stejně když zadáte matici bez uvozovky. Takto se rozbalí do bloku libovolná interní matice. Je to způsob, jak sestrojit matice z jiných menších a normálně je to prováděno na vstupu automaticky, s výjimkou kdy je matice zadána s uvozovkou.</p></dd><dt><span class="term"><a name="gel-function-HermitianProduct"></a>HermitianProduct</span></dt><dd><pre class="synopsis">HermitianProduct (u,v)</pre><p>Alternativní názvy: <code class="function">InnerProduct</code></p><p>Získat hermitovský součin dvou vektorů. Vektory musí mít stejnou velikost. Jedná se o polybilineární formu používající jednotkovou matici.</p><p>Více informací najdete v encyklopediích <a class="ulink" href="http://mathworld.wolfram.com/HermitianInnerProduct.html" target="_top">Mathworld</a> (text je v angličtině) a <a class="ulink" href="https://en.wikipedia.org/wiki/Sesquilinear_form" target="_top">Wikipedia</a> (text je v angličtině).</p></dd><dt><span class="term"><a name="gel-function-I"></a>I</span></dt><dd><pre class="synopsis">I (n)</pre><p>Alternativní názvy: <code class="function">eye</code></p><p>Vrátit jednotkovou matici zadané velikosti, tj. <code class="varname">n</code> krát <code class="varname">n</code>. Pokud je <code class="varname">n</code> rovno 0, vrátí <code class="constant">null</code>.</p><p>Více informací najdete v encyklopediích <a class="ulink" href="http://planetmath.org/IdentityMatrix" target="_top">Planetmath</a> (text je v angličtině) a <a class="ulink" href="https://cs.wikipedia.org/wiki/Jednotkov%C3%A1_matice" target="_top">Wikipedia</a>.</p></dd><dt><span class="term"><a name="gel-function-IndexComplement"></a>IndexComplement</span></dt><dd><pre class="synopsis">IndexComplement (vektor,mvelikost)</pre><p>Vrátit doplňkový index vektoru indexů. Vše je s jednou bází. Například pro vektor <strong class="userinput"><code>[2,3]</code></strong> a velikost <strong class="userinput"><code>5</code></strong> dostaneme <strong class="userinput"><code>[1,4,5]</code></strong>. Pokud je <code class="varname">mvelikost</code> rovna 0, vrací vždy <code class="constant">null</code>.</p></dd><dt><span class="term"><a name="gel-function-IsDiagonal"></a>IsDiagonal</span></dt><dd><pre class="synopsis">IsDiagonal (M)</pre><p>Je matice diagonální?</p><p>Více informací najdete v encyklopediích <a class="ulink" href="http://planetmath.org/DiagonalMatrix" target="_top">Planetmath</a> (text je v angličtině) nebo <a class="ulink" href="https://cs.wikipedia.org/wiki/Diagon%C3%A1ln%C3%AD_matice" target="_top">Wikipedia</a>.</p></dd><dt><span class="term"><a name="gel-function-IsIdentity"></a>IsIdentity</span></dt><dd><pre class="synopsis">IsIdentity (x)</pre><p>Zkontrolovat, zda je matice jednotková. Pokud matice není čtvercová, tak automaticky vrátí <code class="varname">false</code>. Funguje i pro čísla, v kterémžto případě je to stejné jako <strong class="userinput"><code>x==1</code></strong>. Pokud je argument <code class="varname">x</code> roven <code class="constant">null</code> (což můžeme považovat za matici 0 krát 0), nezpůsobí to chybu a vrátí <code class="constant">false</code>.</p></dd><dt><span class="term"><a name="gel-function-IsLowerTriangular"></a>IsLowerTriangular</span></dt><dd><pre class="synopsis">IsLowerTriangular (M)</pre><p>Jde o dolní trojúhelníkovou matici? To je taková, která má všechny prvky nad diagonálou nulové.</p></dd><dt><span class="term"><a name="gel-function-IsMatrixInteger"></a>IsMatrixInteger</span></dt><dd><pre class="synopsis">IsMatrixInteger (M)</pre><p>Zkontrolovat, zda je matice maticí celých (nekomplexních) čísel.</p></dd><dt><span class="term"><a name="gel-function-IsMatrixNonnegative"></a>IsMatrixNonnegative</span></dt><dd><pre class="synopsis">IsMatrixNonnegative (M)</pre><p>Zkontrolovat, zda je matice nezáporná, tj. zda je každý z prvků nezáporný. Nepleťte si pozitivní matice s pozitivně definitními maticemi.</p><p>Více informací najdete v encyklopedii <a class="ulink" href="https://en.wikipedia.org/wiki/Positive_matrix" target="_top">Wikipedia</a> (text je v angličtině).</p></dd><dt><span class="term"><a name="gel-function-IsMatrixPositive"></a>IsMatrixPositive</span></dt><dd><pre class="synopsis">IsMatrixPositive (M)</pre><p>Zkontrolovat, zda je matice pozitivní, tj. zda je každý z prvků kladný (a tudíž reálný). Především není žádný prvek 0. Nepleťte si positivní matice s pozitivně definitními maticemi.</p><p>Více informací najdete v encyklopedii <a class="ulink" href="https://en.wikipedia.org/wiki/Positive_matrix" target="_top">Wikipedia</a> (text je v angličtině).</p></dd><dt><span class="term"><a name="gel-function-IsMatrixRational"></a>IsMatrixRational</span></dt><dd><pre class="synopsis">IsMatrixRational (M)</pre><p>Zkontrolovat, zda je matice maticí z racionálních (nekomplexních) čísel.</p></dd><dt><span class="term"><a name="gel-function-IsMatrixReal"></a>IsMatrixReal</span></dt><dd><pre class="synopsis">IsMatrixReal (M)</pre><p>Zkontrolovat, zda je matice složená z reálných (na komplexních) čísel.</p></dd><dt><span class="term"><a name="gel-function-IsMatrixSquare"></a>IsMatrixSquare</span></dt><dd><pre class="synopsis">IsMatrixSquare (M)</pre><p>Zkontrolovat, zda je matice čtvercová, tj. šířka je stejná jako výška.</p></dd><dt><span class="term"><a name="gel-function-IsUpperTriangular"></a>IsUpperTriangular</span></dt><dd><pre class="synopsis">IsUpperTriangular (M)</pre><p>Jde o horní trojúhelníkovou matici? To je taková, která má všechny prvky pod diagonálou nulové.</p></dd><dt><span class="term"><a name="gel-function-IsValueOnly"></a>IsValueOnly</span></dt><dd><pre class="synopsis">IsValueOnly (M)</pre><p>Zkontrolovat, zda se matice skládá pouze z čísel. Mnoho interních funkcí provádí tuto kontrolu. Hodnoty mohou být libovolná čísla včetně komplexních.</p></dd><dt><span class="term"><a name="gel-function-IsVector"></a>IsVector</span></dt><dd><pre class="synopsis">IsVector (v)</pre><p>Je argument vodorovný nebo svislý vektor? Genius nerozlišuje mezi maticí a vektorem, vektor je prostě jen matice 1 krát <code class="varname">n</code> nebo <code class="varname">n</code> krát 1.</p></dd><dt><span class="term"><a name="gel-function-IsZero"></a>IsZero</span></dt><dd><pre class="synopsis">IsZero (x)</pre><p>Zkontrolovat, zda se matice skládá jen z nul. Funguje to i pro čísla, kdy je to ekvivalentní výrazu <strong class="userinput"><code>x==0</code></strong>. Když je <code class="varname">x</code> rovno <code class="constant">null</code> (můžeme to považovat za matici 0 krát 0), nezpůsobí to žádnou chybu, ale vrátí se <code class="constant">true</code>, protože podmínka je prázdná.</p></dd><dt><span class="term"><a name="gel-function-LowerTriangular"></a>LowerTriangular</span></dt><dd><pre class="synopsis">LowerTriangular (M)</pre><p>Vrátit kopii matice <code class="varname">M</code> se všemi prvky nad diagonálou nastavenými na nulu.</p></dd><dt><span class="term"><a name="gel-function-MakeDiagonal"></a>MakeDiagonal</span></dt><dd><pre class="synopsis">MakeDiagonal (v,argument...)</pre><p>Alternativní názvy: <code class="function">diag</code></p><p>Vytvořit diagonální matici z vektoru. Případně můžete hodnoty, které se mají umístit na diagonálu, zadat jako jednotlivé parametry. Takže <strong class="userinput"><code>MakeDiagonal([1,2,3])</code></strong> je to stejné jako <strong class="userinput"><code>MakeDiagonal(1,2,3)</code></strong>.</p><p>Více informací najdete v encyklopediích <a class="ulink" href="http://planetmath.org/DiagonalMatrix" target="_top">Planetmath</a> (text je v angličtině) nebo <a class="ulink" href="https://cs.wikipedia.org/wiki/Diagon%C3%A1ln%C3%AD_matice" target="_top">Wikipedia</a>.</p></dd><dt><span class="term"><a name="gel-function-MakeVector"></a>MakeVector</span></dt><dd><pre class="synopsis">MakeVector (A)</pre><p>Alternativní název: <code class="function">MakeColumnVector</code></p><p>Vytvořit sloupcový vektor z matice poskládáním sloupců na sebe. Pokud je předáno <code class="constant">null</code>, vrátí <code class="constant">null</code>. Můžete si tím zajistit, že vektor bude opravdu sloupcový vektor.</p></dd><dt><span class="term"><a name="gel-function-MakeRowVector"></a>MakeRowVector</span></dt><dd><pre class="synopsis">MakeRowVector (A)</pre><p>Vytvořit řádkový vektor z matice poskládáním řádků za sebe. Pokud je předáno <code class="constant">null</code>, vrátí <code class="constant">null</code>. Můžete si tím zajistit, že vektor bude skutečně řádkový vektor.</p></dd><dt><span class="term"><a name="gel-function-MatrixProduct"></a>MatrixProduct</span></dt><dd><pre class="synopsis">MatrixProduct (A)</pre><p>Spočítat součin všech prvků matice nebo vektoru. To znamená, že se vynásobí všechny prvky a vrátí se číslo, které je násobkem všech těchto prvků.</p></dd><dt><span class="term"><a name="gel-function-MatrixSum"></a>MatrixSum</span></dt><dd><pre class="synopsis">MatrixSum (A)</pre><p>Spočítat součet všech prvků matice nebo vektoru. To znamená, že se sečtou všechny prvky a vrátí se číslo, které je součtem všech těchto prvků.</p></dd><dt><span class="term"><a name="gel-function-MatrixSumSquares"></a>MatrixSumSquares</span></dt><dd><pre class="synopsis">MatrixSumSquares (A)</pre><p>Spočítat součet druhých mocnin všech prvků matice nebo vektoru.</p></dd><dt><span class="term"><a name="gel-function-NonzeroColumns"></a>NonzeroColumns</span></dt><dd><pre class="synopsis">NonzeroColumns (M)</pre><p>Vrátit řádkový vektor s indexy nenulových sloupců v matici <code class="varname">M</code>.</p><p>Verze 1.0.18 a novější.</p></dd><dt><span class="term"><a name="gel-function-NonzeroElements"></a>NonzeroElements</span></dt><dd><pre class="synopsis">NonzeroElements (v)</pre><p>Vrátit řádkový vektor s indexy nenulových prvků ve vektoru <code class="varname">v</code>.</p><p>Verze 1.0.18 a novější.</p></dd><dt><span class="term"><a name="gel-function-OuterProduct"></a>OuterProduct</span></dt><dd><pre class="synopsis">OuterProduct (u,v)</pre><p>Získat vnější součin dvou vektorů. Takže, když dejme tomu jsou <code class="varname">u</code> a <code class="varname">v</code> svislé vektory, pak vnější součin je <strong class="userinput"><code>v * u.'</code></strong>.</p></dd><dt><span class="term"><a name="gel-function-ReverseVector"></a>ReverseVector</span></dt><dd><pre class="synopsis">ReverseVector (v)</pre><p>Převrátit pořadí prvků ve vektoru. Pokud je předáno <code class="constant">null</code>, tak vrací <code class="constant">null</code>.</p></dd><dt><span class="term"><a name="gel-function-RowSum"></a>RowSum</span></dt><dd><pre class="synopsis">RowSum (m)</pre><p>Vypočítat součet každého řádku v matici a vrátit svislý vektor s výsledkem.</p></dd><dt><span class="term"><a name="gel-function-RowSumSquares"></a>RowSumSquares</span></dt><dd><pre class="synopsis">RowSumSquares (m)</pre><p>Vypočítat součet druhých mocnin každého řádku v matici a vrátit svislý vektor s výsledkem.</p></dd><dt><span class="term"><a name="gel-function-RowsOf"></a>RowsOf</span></dt><dd><pre class="synopsis">RowsOf (M)</pre><p lang="en">Gets the rows of a matrix as a vertical vector.  Each element
of the vector is a horizontal vector that is the corresponding row of
<code class="varname">M</code>.  This function is useful if you wish to loop over the
rows of a matrix.  For example, as <strong class="userinput"><code>for r in RowsOf(M) do
something(r)</code></strong>.</p></dd><dt><span class="term"><a name="gel-function-SetMatrixSize"></a>SetMatrixSize</span></dt><dd><pre class="synopsis">SetMatrixSize (M,radku,sloupcu)</pre><p>Vytvořit novou matici zadané velikosti z jiné staré. To znamená, že nová matice bude vrácena jako kopie té staré. Prvky, které přebývají, jsou odříznuty a volné místo je vyplněno nulami. Pokud je argument <code class="varname">radku</code> nebo <code class="varname">sloupcu</code> roven nule, je vráceno <code class="constant">null</code>.</p></dd><dt><span class="term"><a name="gel-function-ShuffleVector"></a>ShuffleVector</span></dt><dd><pre class="synopsis">ShuffleVector (v)</pre><p>Zamíchat pořadí prvků ve vektoru. Pokud je předáno <code class="constant">null</code>, tak vrací <code class="constant">null</code>.</p><p>Verze 1.0.13 a novější.</p></dd><dt><span class="term"><a name="gel-function-SortVector"></a>SortVector</span></dt><dd><pre class="synopsis">SortVector (v)</pre><p>Seřadit prvky vektoru ve vzestupném pořadí.</p></dd><dt><span class="term"><a name="gel-function-StripZeroColumns"></a>StripZeroColumns</span></dt><dd><pre class="synopsis">StripZeroColumns (M)</pre><p>Odstranit všechny čistě nulové sloupce matice <code class="varname">M</code>.</p></dd><dt><span class="term"><a name="gel-function-StripZeroRows"></a>StripZeroRows</span></dt><dd><pre class="synopsis">StripZeroRows (M)</pre><p>Odstranit všechny čistě nulové řádky matice <code class="varname">M</code>.</p></dd><dt><span class="term"><a name="gel-function-Submatrix"></a>Submatrix</span></dt><dd><pre class="synopsis">Submatrix (m,r,s)</pre><p>Vrátit sloupec (či sloupce) a řádek (či řádky) z matice. Je to stejné jako <strong class="userinput"><code>m@(r,s)</code></strong>. Argumenty <code class="varname">r</code> a <code class="varname">s</code> by měly být vektory se seznamy řádků a sloupců (nebo samostatná čísla, pokud požadujete jen jeden řádek nebo sloupec).</p></dd><dt><span class="term"><a name="gel-function-SwapRows"></a>SwapRows</span></dt><dd><pre class="synopsis">SwapRows (m,radek1,radek2)</pre><p>Prohodit dva řádky v matici.</p></dd><dt><span class="term"><a name="gel-function-UpperTriangular"></a>UpperTriangular</span></dt><dd><pre class="synopsis">UpperTriangular (M)</pre><p>Vrátit kopii matice <code class="varname">M</code> se všemi prvky pod diagonálou nastavenými na nulu.</p></dd><dt><span class="term"><a name="gel-function-columns"></a>columns</span></dt><dd><pre class="synopsis">columns (M)</pre><p>Vrátit počet sloupců matice.</p></dd><dt><span class="term"><a name="gel-function-elements"></a>elements</span></dt><dd><pre class="synopsis">elements (M)</pre><p>Vrátit celkový počet prvků matice. Tj. počet sloupců krát počet řádků.</p></dd><dt><span class="term"><a name="gel-function-ones"></a>ones</span></dt><dd><pre class="synopsis">ones (radku,sloupcu...)</pre><p>Vytvořit matici ze samých jedniček (nebo řádkový vektor, pokud je zadán jen jeden argument). Když je <code class="varname">radku</code> nebo <code class="varname">sloupcu</code> rovno nule, vrátí <code class="constant">null</code>.</p></dd><dt><span class="term"><a name="gel-function-rows"></a>rows</span></dt><dd><pre class="synopsis">rows (M)</pre><p>Vrátit počet řádků matice.</p></dd><dt><span class="term"><a name="gel-function-zeros"></a>zeros</span></dt><dd><pre class="synopsis">zeros (radku,sloupcu...)</pre><p>Vytvořit matici celou z nul (nebo řádkový vektor, pokud je zadán jen jeden argument). Pokud je argument <code class="varname">radku</code> nebo <code class="varname">sloupcu</code> roven nule, je vráceno <code class="constant">null</code>.</p></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s07.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11s09.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Teorie čísel </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Lineární algebra</td></tr></table></div></body></html>