~ubuntu-branches/ubuntu/raring/genius/raring

« back to all changes in this revision

Viewing changes to help/cs/genius.xml

  • Committer: Logan Rosen
  • Date: 2012-12-23 04:12:09 UTC
  • mfrom: (1.2.8)
  • Revision ID: logatronico@gmail.com-20121223041209-kduaktqblmrcakhk
New upstream release (LP: #1092569).

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
3
3
<!ENTITY app "<application>Genius Mathematics Tool</application>">
4
4
<!ENTITY appname "Genius">
5
 
<!ENTITY appversion "1.0.15">
6
 
<!ENTITY date "March 2012">
 
5
<!ENTITY appversion "1.0.16">
 
6
<!ENTITY date "December 2012">
7
7
<!ENTITY legal SYSTEM "legal.xml">
8
8
<!ENTITY manrevision "0.2">
9
9
<!ENTITY lt "&#60;">
152
152
    <revhistory>
153
153
      <revision> 
154
154
                <revnumber>0.2</revnumber> 
155
 
                <date>Březen 2012</date> 
 
155
                <date>December 2012</date> 
156
156
                <revdescription> 
157
157
                        <para role="author">Jiri (George) Lebl <email>jirka@5z.com</email></para>
158
158
                </revdescription> 
159
159
      </revision> 
160
160
    </revhistory>
161
 
    <releaseinfo>Tato příručka popisuje aplikaci Genius ve verzi 1.0.15.</releaseinfo> 
 
161
    <releaseinfo>This manual describes version 1.0.16 of Genius.
 
162
    </releaseinfo> 
162
163
    <legalnotice> 
163
164
      <title>Ohlasy</title> 
164
165
      <para>Pokud chcete oznámit chybu nebo navrhnout vylepšení vztahující se k aplikaci <application>matematický nástroj Genius</application> nebo této příručce, postupujte dle instrukcí na stránce <ulink url="ghelp:gnome-feedback" type="help">Stránka s ohlasy na GNOME</ulink>.</para>
218
219
            <imageobject>
219
220
              <imagedata fileref="figures/genius_window.png" format="PNG" scale="50" scalefit="1"/> 
220
221
            </imageobject>
221
 
            <imageobject>
222
 
              <imagedata fileref="figures/genius_window.eps" format="EPS" scale="50" scalefit="1"/> 
223
 
            </imageobject>
224
222
            <textobject> 
225
223
              <phrase>Ukazuje hlavní okno aplikace <application>Matematický nástroj Genius</application>. Obsahuje záhlaví, lištu nabídek, lištu nástrojů a pracovní oblast. Lišta nabídek obsahuje nabídky <guilabel>Soubor</guilabel>, <guilabel>Upravit</guilabel>, <guilabel>Kalkulátor</guilabel>, <guilabel>Nastavení</guilabel> a <guilabel>Nápověda</guilabel>.</phrase> 
226
224
            </textobject> 
310
308
            <imageobject>
311
309
              <imagedata fileref="figures/line_plot.png" format="PNG" scale="50" scalefit="1"/> 
312
310
            </imageobject>
313
 
            <imageobject>
314
 
              <imagedata fileref="figures/line_plot.eps" format="EPS" scale="50" scalefit="1"/> 
315
 
            </imageobject>
316
311
            <textobject> 
317
312
              <phrase>Ukazuje okno vytváření čárového grafu.</phrase> 
318
313
            </textobject> 
329
324
            <imageobject>
330
325
              <imagedata fileref="figures/line_plot_graph.png" format="PNG" scale="50" scalefit="1"/> 
331
326
            </imageobject>
332
 
            <imageobject>
333
 
              <imagedata fileref="figures/line_plot_graph.eps" format="EPS" scale="50" scalefit="1"/> 
334
 
            </imageobject>
335
327
            <textobject> 
336
328
              <phrase>Výsledný graf.</phrase> 
337
329
            </textobject> 
355
347
            <imageobject>
356
348
              <imagedata fileref="figures/parametric.png" format="PNG" scale="50" scalefit="1"/> 
357
349
            </imageobject>
358
 
            <imageobject>
359
 
              <imagedata fileref="figures/parametric.eps" format="EPS" scale="50" scalefit="1"/> 
360
 
            </imageobject>
361
350
            <textobject> 
362
351
              <phrase>Parametrický graf v okně <guilabel>Vytváření grafu</guilabel>.</phrase> 
363
352
            </textobject> 
365
354
        </screenshot> 
366
355
      </figure>
367
356
 
368
 
      <para>Příklad parametrického grafu je uveden na obrázku <xref linkend="paramplot-fig"/>. Dělat můžete podobné operace jako u jiných čárových grafů. Na to, jak vykreslení provést z příkazového řádku, se podívejte do dokumentace na funkci <link linkend="gel-function-LinePlotParametric"><function>LinePlotParametric</function></link> nebo <link linkend="gel-function-LinePlotCParametric"><function>LinePlotCParametric</function></link>.</para>
 
357
      <para>
 
358
        An example of a parametric plot is given in
 
359
        <xref linkend="paramplot2-fig"/>.
 
360
        Similar operations can be
 
361
        done on such graphs as can be done on the other line plots.
 
362
        For plotting using the command line see the documentation of the
 
363
        <link linkend="gel-function-LinePlotParametric"><function>LinePlotParametric</function></link> or
 
364
        <link linkend="gel-function-LinePlotCParametric"><function>LinePlotCParametric</function></link> function.
 
365
      </para>
369
366
 
370
367
      <figure id="paramplot2-fig"> 
371
368
        <title>Parametrické grafy</title> 
374
371
            <imageobject>
375
372
              <imagedata fileref="figures/parametric_graph.png" format="PNG" scale="50" scalefit="1"/> 
376
373
            </imageobject>
377
 
            <imageobject>
378
 
              <imagedata fileref="figures/parametric_graph.eps" format="EPS" scale="50" scalefit="1"/> 
379
 
            </imageobject>
380
374
            <textobject> 
381
375
              <phrase>Výslední parametrický graf.</phrase> 
382
376
            </textobject> 
419
413
            <imageobject>
420
414
              <imagedata fileref="figures/surface_graph.png" format="PNG" scale="50" scalefit="1"/> 
421
415
            </imageobject>
422
 
            <imageobject>
423
 
              <imagedata fileref="figures/surface_graph.eps" format="EPS" scale="50" scalefit="1"/> 
424
 
            </imageobject>
425
416
            <textobject> 
426
417
              <phrase>Modul (absolutní hodnota) komplexní funkce kosinus.</phrase> 
427
418
            </textobject> 
437
428
  <chapter id="genius-gel"> 
438
429
    <title>Základy jazyka GEL</title> 
439
430
 
440
 
        <para>GEL znamená Genius Extension Language (rozšiřující jazyk Genius). Jedná se o jazyk, ve kterém píšete programy v kalkulátoru Genius. Program v jazyce GEL je jednoduše výraz, který je vyhodnocen jako číslo. <application>Matematický nástroj Genius</application> tak může sloužit jako jednoduchý kalkulátor nebo mocný nástroj pro teoretický vědecký výzkum. Cílem syntaxe je, aby byla snadná na naučení, jak jen to jde, zejména pro používání jako kalkulačka.</para>
 
431
        <para>
 
432
          GEL stands for Genius Extension Language.    It is the language you use
 
433
          to write programs in Genius. A program in GEL is simply an
 
434
          expression that evaluates to a number.
 
435
          <application>Genius Mathematics Tool</application> can be used as a simple calculator, or as a
 
436
          powerful theoretical research tool.  The syntax is meant to
 
437
          have as shallow of a learning curve as possible, especially for use
 
438
          as a calculator.
 
439
        </para>
441
440
 
442
441
    <sect1 id="genius-gel-values">
443
442
      <title>Hodnoty</title>
464
463
77e5
465
464
</programlisting> Když Genius vypisuje desetinné číslo, vždy u něj přidá <computeroutput>.0</computeroutput>, i když je celé. Tím se dává najevo, že desetinná čísla nemají dokonalou přesnost. Pokud je číslo zapsáno ve vědecké notaci, jedná se vždy o desetinné číslo a Genius tak nemusí vypisovat <computeroutput>.0</computeroutput>.</para>
466
465
 
467
 
        <para>Posledním typem čísel jsou komplexní čísla (complex). Komplexní číslo můžete zadat jako součet reálné a imaginární části. Imaginární část končí <literal>i</literal>. Zde jsou příklady zápisu komplexních čísel: <programlisting>1+2i
 
466
        <para>
 
467
The final type of number in gel is the complex numbers. You can enter a complex number as a sum of real and imaginary parts. To add an imaginary part, append an <literal>i</literal>.  Here are examples of entering complex numbers:
 
468
<programlisting>1+2i
468
469
8.01i
469
470
77*e^(1.3i)
470
 
</programlisting></para>
 
471
</programlisting>
 
472
        </para>
471
473
 
472
474
        <important>
473
475
          <para>Při zadávání imaginárních čísel musí číslo vždy předcházet před <literal>i</literal>. Pokud byste použili samotné <literal>i</literal>, Genius by se k němu stavěl, jako k odkazu na proměnnou <varname>i</varname>. Pokud potřebujete použít právě <literal>i</literal>, použijte místo toho <literal>1i</literal>.</para>
722
724
        <varlistentry>
723
725
         <term><synopsis>a+b</synopsis></term>
724
726
         <listitem>
725
 
           <para>Sčítání. Sečte dvě čísla, matice, funkce nebo řetězce. Pokud přičtete řetězec k čemukoliv, výsledkem bude vždy řetězec.</para>
 
727
           <para>
 
728
             Addition.  Adds two numbers, matrices, functions or strings.  If
 
729
             you add a string to anything the result will just be a string.  If one is
 
730
             a square matrix and the other a number, then the number is multiplied by
 
731
             the identity matrix.
 
732
           </para>
726
733
         </listitem>
727
734
        </varlistentry>
728
735
 
754
761
        <varlistentry>
755
762
         <term><synopsis>a/b</synopsis></term>
756
763
         <listitem>
757
 
           <para>Dělení.</para>
 
764
           <para>
 
765
                   Division.  When <varname>a</varname> and <varname>b</varname> are just numbers
 
766
                   this is the normal division.  When they are matrices, then this is
 
767
                   equivalent to <userinput>a*b^-1</userinput>.
 
768
           </para>
758
769
         </listitem>
759
770
        </varlistentry>
760
771
 
762
773
        <varlistentry>
763
774
         <term><synopsis>a./b</synopsis></term>
764
775
         <listitem>
765
 
           <para>Dělení prvků prvky.</para>
 
776
           <para>
 
777
                   Element by element division.  Same as <userinput>a/b</userinput> for
 
778
                   numbers, but operarates element by element on matrices.
 
779
           </para>
766
780
         </listitem>
767
781
        </varlistentry>
768
782
 
826
840
        <varlistentry>
827
841
         <term><synopsis>a==b</synopsis></term>
828
842
         <listitem>
829
 
           <para>Operátor porovnání (vrací <constant>true</constant> nebo <constant>false</constant>).</para>
 
843
           <para>
 
844
             Equality operator.
 
845
             Returns <constant>true</constant> or <constant>false</constant>
 
846
             depending on <varname>a</varname> and <varname>b</varname> being equal or not.
 
847
           </para>
830
848
         </listitem>
831
849
        </varlistentry>
832
850
 
850
868
        <varlistentry>
851
869
         <term><synopsis>a&lt;=b</synopsis></term>
852
870
         <listitem>
853
 
           <para>Operátor menší nebo rovno, vrací <constant>true</constant> (pravda) v případě, že <varname>a</varname> je menší než nebo se rovná <varname>b</varname>, jinak vrací <constant>false</constant> (nepravda).</para>
 
871
           <para>
 
872
             Less than or equal operator,
 
873
             returns <constant>true</constant> if <varname>a</varname> is
 
874
             less than or equal to 
 
875
             <varname>b</varname> else returns <constant>false</constant>.
 
876
             These can be chained as in <userinput>a &lt;= b &lt;= c</userinput> (can
 
877
             also be combined with the less than operator).
 
878
           </para>
854
879
         </listitem>
855
880
        </varlistentry>
856
881
 
858
883
        <varlistentry>
859
884
         <term><synopsis>a&gt;=b</synopsis></term>
860
885
         <listitem>
861
 
           <para>Operátor větší nebo rovno, vrací <constant>true</constant> (pravda) v případě, že <varname>a</varname> je větší než nebo se rovná <varname>b</varname>, jinak vrací <constant>false</constant> (nepravda).</para>
 
886
           <para>
 
887
             Greater than or equal operator,
 
888
             returns <constant>true</constant> if <varname>a</varname> is
 
889
             greater than or equal to 
 
890
             <varname>b</varname> else returns <constant>false</constant>.
 
891
             These can be chained as in <userinput>a &gt;= b &gt;= c</userinput>
 
892
             (can also be combine with the greater than operator).
 
893
           </para>
 
894
         </listitem>
 
895
        </varlistentry>
 
896
 
 
897
        <varlistentry>
 
898
         <term><synopsis>a&lt;b</synopsis></term>
 
899
         <listitem>
 
900
           <para>
 
901
             Less than operator,
 
902
             returns <constant>true</constant> if <varname>a</varname> is
 
903
             less than or equal to 
 
904
             <varname>b</varname> else returns <constant>false</constant>.
 
905
             These can be chained as in <userinput>a &lt; b &lt; c</userinput>
 
906
             (can also be combine with the less than or equal to operator).
 
907
           </para>
 
908
         </listitem>
 
909
        </varlistentry>
 
910
 
 
911
 
 
912
        <varlistentry>
 
913
         <term><synopsis>a&gt;b</synopsis></term>
 
914
         <listitem>
 
915
           <para>
 
916
             Greater than operator,
 
917
             returns <constant>true</constant> if <varname>a</varname> is
 
918
             greater than or equal to 
 
919
             <varname>b</varname> else returns <constant>false</constant>.
 
920
             These can be chained as in <userinput>a &gt; b &gt; c</userinput>
 
921
             (can also be combine with the greater than or equal to operator).
 
922
           </para>
862
923
         </listitem>
863
924
        </varlistentry>
864
925
 
874
935
        <varlistentry>
875
936
         <term><synopsis>a and b</synopsis></term>
876
937
         <listitem>
877
 
           <para>Logické AND.</para>
 
938
           <para>
 
939
                   Logical and.  Returns true if both
 
940
                   <varname>a</varname> and <varname>b</varname> are true,
 
941
                   else returns false.  If given numbers, nonzero numbers
 
942
                   are treated as true.
 
943
           </para>
878
944
         </listitem>
879
945
        </varlistentry>
880
946
 
882
948
        <varlistentry>
883
949
         <term><synopsis>a or b</synopsis></term>
884
950
         <listitem>
885
 
           <para>Logické OR.</para>
 
951
           <para>
 
952
             Logical or.
 
953
             Returns true if both
 
954
             <varname>a</varname> or <varname>b</varname> are true,
 
955
             else returns false.  If given numbers, nonzero numbers
 
956
             are treated as true.
 
957
           </para>
886
958
         </listitem>
887
959
        </varlistentry>
888
960
 
890
962
        <varlistentry>
891
963
         <term><synopsis>a xor b</synopsis></term>
892
964
         <listitem>
893
 
           <para>Logické XOR.</para>
 
965
           <para>
 
966
             Logical xor.
 
967
             Returns true exactly one of
 
968
             <varname>a</varname> or <varname>b</varname> is true,
 
969
             else returns false.  If given numbers, nonzero numbers
 
970
             are treated as true.
 
971
           </para>
894
972
         </listitem>
895
973
        </varlistentry>
896
974
 
898
976
        <varlistentry>
899
977
         <term><synopsis>not a</synopsis></term>
900
978
         <listitem>
901
 
           <para>Logické NOT.</para>
 
979
           <para>
 
980
                   Logical not.  Returns the logical negation of <varname>a</varname>
 
981
           </para>
902
982
         </listitem>
903
983
        </varlistentry>
904
984
 
922
1002
        <varlistentry>
923
1003
         <term><synopsis>*a</synopsis></term>
924
1004
         <listitem>
925
 
           <para>Dereference proměnné (pro přístup k odkazované proměnné). Viz <xref linkend="genius-gel-references"/>.</para>
 
1005
           <para>
 
1006
             Variable dereferencing (to access a referenced variable).
 
1007
             See <xref linkend="genius-gel-references"/>.
 
1008
           </para>
926
1009
         </listitem>
927
1010
        </varlistentry>
928
1011
 
1295
1378
  r
1296
1379
)
1297
1380
</programlisting> bude vracet funkci, která při zavolání přičte 5 ke svému argumentu. Lokální kopie <varname>k</varname> byla vytvořena ve chvíli, kdy byla funkce definována.</para>
1298
 
        <para>Když chcete, aby funkce neměla žádný privátní slovník, tak vložte za seznam argumentů prázdné hranaté závorky. V takovém případě nebude vytvořen vůbec žádný privátní slovník. To je dobré pro zvýšení efektivity v situacích, kdy žádný privátní slovník není zapotřebí nebo když chcete, aby funkce hledala všechny proměnné takové, jaké jsou v okamžiku volání. Například předpokládejme že chcete, aby funkce vracená funkcí <function>f</function> viděla hodnotu <varname>n</varname> z nejvyšší úrovně, přestože existuje lokální proměnná stejného jména během definování. Potom kód <programlisting>function f() = (
 
1381
        <para>
 
1382
          When you want the function to not have any private dictionary
 
1383
          then put empty square brackets after the argument list.  Then
 
1384
          no private dictionary will be created at all.  Doing this is
 
1385
          good to increase efficiency when a private dictionary is not
 
1386
          needed or when you want the function to lookup all variables
 
1387
          as it sees them when called.  For example suppose you want
 
1388
          the function returned from <function>f</function> to see
 
1389
          the value of <varname>k</varname> from the toplevel despite
 
1390
          there being a local variable of the same name during definition.
 
1391
          So the code
 
1392
<programlisting>function f() = (
1299
1393
  k := 5;
1300
1394
  function r(x) [] = (x+k);
1301
1395
  r
1303
1397
k := 10;
1304
1398
g = f();
1305
1399
g(10)
1306
 
</programlisting> bude vrace 20 a ne 15, což by nastalo v případě, že <varname>n</varname> s hodnotou 5 bylo přidáno do privátního slovníku.</para>
 
1400
</programlisting>
 
1401
          will return 20 and not 15, which would happen if
 
1402
          <varname>k</varname> with a value of 5 was added to the private
 
1403
          dictionary.
 
1404
        </para>
1307
1405
    </sect1>
1308
1406
 
1309
1407
    <sect1 id="genius-gel-true-local-variables">
1988
2086
         </listitem>
1989
2087
        </varlistentry>
1990
2088
 
 
2089
        <varlistentry id="gel-function-LinePlotDrawAxisLabels">
 
2090
         <term>LinePlotDrawAxisLabels</term>
 
2091
         <listitem>
 
2092
          <synopsis>LinePlotDrawAxisLabels = true</synopsis>
 
2093
          <para>Tells genius to draw the axis labels for <link linkend="genius-gel-function-list-plotting">line plotting
 
2094
          functions</link> such as <link linkend="gel-function-LinePlot"><function>LinePlot</function></link>.
 
2095
          </para>
 
2096
         </listitem>
 
2097
        </varlistentry>
 
2098
 
1991
2099
        <varlistentry id="gel-function-LinePlotVariableNames">
1992
2100
         <term>LinePlotVariableNames</term>
1993
2101
         <listitem>
2121
2229
         </listitem>
2122
2230
        </varlistentry>
2123
2231
 
 
2232
        <varlistentry id="gel-function-SurfacePlotDrawLegends">
 
2233
         <term>SurfacePlotDrawLegends</term>
 
2234
         <listitem>
 
2235
          <synopsis>SurfacePlotDrawLegends = true</synopsis>
 
2236
          <para>Tells genius to draw the legends for <link linkend="genius-gel-function-list-plotting">surface plotting
 
2237
          functions</link> such as <link linkend="gel-function-SurfacePlot"><function>SurfacePlot</function></link>.
 
2238
          </para>
 
2239
         </listitem>
 
2240
        </varlistentry>
 
2241
 
2124
2242
        <varlistentry id="gel-function-SurfacePlotVariableNames">
2125
2243
         <term>SurfacePlotVariableNames</term>
2126
2244
         <listitem>
2897
3015
         <term>FermatFactorization</term>
2898
3016
         <listitem>
2899
3017
          <synopsis>FermatFactorization (n,pokusy)</synopsis>
2900
 
          <para>Zkusit Fermatův rozklad <varname>n</varname> na <userinput>(t-s)*(t+s)</userinput>. Pokud to je možné, vrací <varname>t</varname> a <varname>s</varname> jako vektor, jinak vrací <constant>null</constant>. Argument <varname>pokusy</varname> určuje počet pokusu, než se výpočet vzdá.</para>
 
3018
          <para>
 
3019
            Attempt Fermat factorization of <varname>n</varname> into
 
3020
            <userinput>(t-s)*(t+s)</userinput>, returns <varname>t</varname>
 
3021
            and <varname>s</varname> as a vector if possible, <constant>null</constant> otherwise.
 
3022
            <varname>tries</varname> specifies the number of tries before
 
3023
            giving up.
 
3024
          </para>
2901
3025
          <para>Jedná se o docela dobrý rozklad za předpokladu, že je vaše číslo součinem dvou přibližně stejně velkých čísel.</para>
2902
3026
          <para>Více informací najdete v encyklopedii <ulink url="http://en.wikipedia.org/wiki/Fermat_factorization">Wikipedia</ulink> (text je v angličtině).</para>
2903
3027
         </listitem>
3014
3138
         <term>IsPseudoprime</term>
3015
3139
         <listitem>
3016
3140
          <synopsis>IsPseudoprime (n,b)</synopsis>
3017
 
          <para>Zda je <varname>n</varname> pseudoprvočíslo o základu <varname>b</varname>, ale ne prvočíslo, tj. jestli <userinput>b^(n-1) == 1 mod n</userinput>. Nazývá se to <function>malá Fermatova věta</function>.</para>
 
3141
          <para>If <varname>n</varname> is a pseudoprime base <varname>b</varname> but not a prime,
 
3142
that is if <userinput>b^(n-1) == 1 mod n</userinput>.  This calls the <function>PseudoprimeTest</function></para>
3018
3143
         </listitem>
3019
3144
        </varlistentry>
3020
3145
 
3293
3418
         <term>CountZeroColumns</term>
3294
3419
         <listitem>
3295
3420
          <synopsis>CountZeroColumns (M)</synopsis>
3296
 
          <para>Spočítat počet nulových sloupců v matici. Například jakmile zredukujete sloupce matice, můžete to využít k nalezení nulovosti. Viz <link linkend="gel-function-cref"><function>cref</function></link> a <link linkend="gel-function-Nullity"><function>Nullity</function></link>.</para>
 
3421
          <para>
 
3422
           Count the number of zero columns in a matrix.  For example
 
3423
           once your column reduce a matrix you can use this to find
 
3424
           the nullity.  See <link linkend="gel-function-cref"><function>cref</function></link>
 
3425
           and <link linkend="gel-function-Nullity"><function>Nullity</function></link>.
 
3426
          </para>
3297
3427
         </listitem>
3298
3428
        </varlistentry>
3299
3429
 
3446
3576
         <term>IsUpperTriangular</term>
3447
3577
         <listitem>
3448
3578
          <synopsis>IsUpperTriangular (M)</synopsis>
3449
 
          <para>Jde o horní trojúhelníkovou matici? To je taková, která má všechny prvky pod diagonálou nulové.</para>
 
3579
          <para>Is a matrix upper triangular?  That is, a matrix is upper triangular if all the entries below the diagonal are zero.</para>
3450
3580
         </listitem>
3451
3581
        </varlistentry>
3452
3582
 
3487
3617
         <listitem>
3488
3618
          <synopsis>MakeDiagonal (v,argument...)</synopsis>
3489
3619
          <para>Alternativní názvy: <function>diag</function></para>
3490
 
          <para>Vytvořit diagonální matici z vektoru.</para>
 
3620
          <para>Make diagonal matrix from a vector.  Alternatively you can pass
 
3621
                  in the values to put on the diagonal as arguments.  So
 
3622
                  <userinput>MakeDiagonal([1,2,3])</userinput> is the same as
 
3623
                  <userinput>MakeDiagonal(1,2,3)</userinput>.</para>
3491
3624
          <para>Více informací najdete v encyklopediích <ulink url="http://planetmath.org/encyclopedia/DiagonalMatrix.html">Planetmath</ulink> (text je v angličtině) nebo <ulink url="http://cs.wikipedia.org/wiki/Diagon%C3%A1ln%C3%AD_matice">Wikipedia</ulink>.</para>
3492
3625
         </listitem>
3493
3626
        </varlistentry>
3552
3685
         <term>RowSumSquares</term>
3553
3686
         <listitem>
3554
3687
          <synopsis>RowSumSquares (m)</synopsis>
3555
 
          <para>Spočítat součet druhých mocnin každého řádku v matici.</para>
 
3688
          <para>Calculate sum of squares of each row in a matrix and return a vertical vector with the results.</para>
3556
3689
         </listitem>
3557
3690
        </varlistentry>
3558
3691
 
3569
3702
         <term>SetMatrixSize</term>
3570
3703
         <listitem>
3571
3704
          <synopsis>SetMatrixSize (M,radku,sloupcu)</synopsis>
3572
 
          <para>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 <varname>radku</varname> nebo <varname>sloupcu</varname> roven nule, je vráceno <constant>null</constant>.</para>
 
3705
          <para>Make new matrix of given size from old one.  That is, a new
 
3706
          matrix will be returned to which the old one is copied.  Entries that
 
3707
          don't fit are clipped and extra space is filled with zeros.
 
3708
          If <varname>rows</varname> or <varname>columns</varname> are zero
 
3709
          then <constant>null</constant> is returned.
 
3710
          </para>
3573
3711
         </listitem>
3574
3712
        </varlistentry>
3575
3713
 
3902
4040
         <term>IsInvertible</term>
3903
4041
         <listitem>
3904
4042
          <synopsis>IsInvertible (n)</synopsis>
3905
 
          <para>Je matice (nebo číslo) invertovatelná (matice celých čísel je invertovatelná, když je invertovatelná nad celými čísly).</para>
 
4043
          <para>Is a matrix (or number) invertible (Integer matrix is invertible if and only if it is invertible over the integers).</para>
3906
4044
         </listitem>
3907
4045
        </varlistentry>
3908
4046
 
4103
4241
         <term>RosserMatrix</term>
4104
4242
         <listitem>
4105
4243
          <synopsis>RosserMatrix ()</synopsis>
4106
 
          <para>Rosserova matice, klasický symetrický problém testu vlastního čísla.</para>
 
4244
          <para>Returns the Rosser matrix, which is a classic symmetric eigenvalue test problem.</para>
4107
4245
         </listitem>
4108
4246
        </varlistentry>
4109
4247
 
4315
4453
         <term>Catalan</term>
4316
4454
         <listitem>
4317
4455
          <synopsis>Catalan (n)</synopsis>
4318
 
          <para>Získat <varname>n</varname>-té Catalanovo číslo.</para>
 
4456
          <para>Get <varname>n</varname>th Catalan number.</para>
4319
4457
          <para>Více informací najdete v encyklopediích <ulink url="http://planetmath.org/encyclopedia/CatalanNumbers.html">Planetmath</ulink> (text je v angličtině) nebo <ulink url="http://cs.wikipedia.org/wiki/Catalanova_%C4%8D%C3%ADsla">Wikipedia</ulink>.</para>
4320
4458
         </listitem>
4321
4459
        </varlistentry>
4396
4534
         <listitem>
4397
4535
          <synopsis>HarmonicNumber (n,r)</synopsis>
4398
4536
          <para>Alternativní názvy: <function>HarmonicH</function></para>
4399
 
          <para>Harmonické číslo, <varname>n</varname>-té harmonické číslo řádu <varname>r</varname>.</para>
 
4537
          <para>Harmonic Number, the <varname>n</varname>th harmonic number of order <varname>r</varname>.</para>
4400
4538
         </listitem>
4401
4539
        </varlistentry>
4402
4540
 
4412
4550
         <term>LinearRecursiveSequence</term>
4413
4551
         <listitem>
4414
4552
          <synopsis>LinearRecursiveSequence (pocatecni_hodnoty,kombinacni_pravidlo,n)</synopsis>
4415
 
          <para>Spočítat lineární rekurzivní posloupnost pomocí Galoisova krokování.</para>
 
4553
          <para>Compute linear recursive sequence using Galois stepping.</para>
4416
4554
         </listitem>
4417
4555
        </varlistentry>
4418
4556
 
4503
4641
         <term>Triangular</term>
4504
4642
         <listitem>
4505
4643
          <synopsis>Triangular (n)</synopsis>
4506
 
          <para>Spočítat <varname>n</varname>-té trojúhelníkové číslo.</para>
 
4644
          <para>Calculate the <varname>n</varname>th triangular number.</para>
4507
4645
          <para>Více informací najdete v encyklopediích <ulink url="http://planetmath.org/encyclopedia/TriangularNumbers.html">Planetmath</ulink> (text je v angličtině) nebo <ulink url="http://cs.wikipedia.org/wiki/Troj%C3%BAheln%C3%ADkov%C3%A9_%C4%8D%C3%ADslo">Wikipedia</ulink>.</para>
4508
4646
         </listitem>
4509
4647
        </varlistentry>
4817
4955
         </listitem>
4818
4956
        </varlistentry>
4819
4957
 
 
4958
        <varlistentry id="gel-function-BesselJ0">
 
4959
         <term>BesselJ0</term>
 
4960
         <listitem>
 
4961
          <synopsis>BesselJ0 (x)</synopsis>
 
4962
          <para>Bessel function of the first kind of order 0.  Only implemented for real numbers.</para>
 
4963
          <para>
 
4964
            See
 
4965
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
4966
          </para>
 
4967
         </listitem>
 
4968
        </varlistentry>
 
4969
 
 
4970
        <varlistentry id="gel-function-BesselJ1">
 
4971
         <term>BesselJ1</term>
 
4972
         <listitem>
 
4973
          <synopsis>BesselJ1 (x)</synopsis>
 
4974
          <para>Bessel function of the first kind of order 1.  Only implemented for real numbers.</para>
 
4975
          <para>
 
4976
            See
 
4977
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
4978
          </para>
 
4979
         </listitem>
 
4980
        </varlistentry>
 
4981
 
 
4982
        <varlistentry id="gel-function-BesselJn">
 
4983
         <term>BesselJn</term>
 
4984
         <listitem>
 
4985
          <synopsis>BesselJn (n,x)</synopsis>
 
4986
          <para>Bessel function of the first kind of order <varname>n</varname>.  Only implemented for real numbers.</para>
 
4987
          <para>
 
4988
            See
 
4989
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
4990
          </para>
 
4991
         </listitem>
 
4992
        </varlistentry>
 
4993
 
 
4994
        <varlistentry id="gel-function-BesselY0">
 
4995
         <term>BesselY0</term>
 
4996
         <listitem>
 
4997
          <synopsis>BesselY0 (x)</synopsis>
 
4998
          <para>Bessel function of the second kind of order 0.  Only implemented for real numbers.</para>
 
4999
          <para>
 
5000
            See
 
5001
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
5002
          </para>
 
5003
         </listitem>
 
5004
        </varlistentry>
 
5005
 
 
5006
        <varlistentry id="gel-function-BesselY1">
 
5007
         <term>BesselY1</term>
 
5008
         <listitem>
 
5009
          <synopsis>BesselY1 (x)</synopsis>
 
5010
          <para>Bessel function of the second kind of order 1.  Only implemented for real numbers.</para>
 
5011
          <para>
 
5012
            See
 
5013
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
5014
          </para>
 
5015
         </listitem>
 
5016
        </varlistentry>
 
5017
 
 
5018
        <varlistentry id="gel-function-BesselYn">
 
5019
         <term>BesselYn</term>
 
5020
         <listitem>
 
5021
          <synopsis>BesselYn (n,x)</synopsis>
 
5022
          <para>Bessel function of the second kind of order <varname>n</varname>.  Only implemented for real numbers.</para>
 
5023
          <para>
 
5024
            See
 
5025
            <ulink url="http://en.wikipedia.org/wiki/Bessel_functions">Wikipedia</ulink> for more information.
 
5026
          </para>
 
5027
         </listitem>
 
5028
        </varlistentry>
 
5029
 
4820
5030
        <varlistentry id="gel-function-DirichletKernel">
4821
5031
         <term>DirichletKernel</term>
4822
5032
         <listitem>
4829
5039
         <term>DiscreteDelta</term>
4830
5040
         <listitem>
4831
5041
          <synopsis>DiscreteDelta (v)</synopsis>
4832
 
          <para>Vrátit 1, pokud jsou všechny prvky nulové.</para>
 
5042
          <para>Returns 1 if and only if all elements are zero.</para>
4833
5043
         </listitem>
4834
5044
        </varlistentry>
4835
5045
 
4866
5076
         <term>KroneckerDelta</term>
4867
5077
         <listitem>
4868
5078
          <synopsis>KroneckerDelta (v)</synopsis>
4869
 
          <para>Vrací 1, když se všechny prvky rovnají.</para>
 
5079
          <para>Returns 1 if and only if all elements are equal.</para>
4870
5080
         </listitem>
4871
5081
        </varlistentry>
4872
5082
 
4982
5192
         </listitem>
4983
5193
        </varlistentry>
4984
5194
 
 
5195
        <varlistentry id="gel-function-sinc">
 
5196
         <term>sinc</term>
 
5197
         <listitem>
 
5198
          <synopsis>sinc (x)</synopsis>
 
5199
          <para>Calculates the unnormalized sinc function, that is
 
5200
                  <userinput>sin(x)/x</userinput>.
 
5201
                  If you want the normalized function call <userinput>sinc(pi*x)</userinput>.</para>
 
5202
          <para>
 
5203
            See
 
5204
            <ulink url="http://en.wikipedia.org/wiki/Sinc">Wikipedia</ulink> for more information.
 
5205
          </para>
 
5206
         </listitem>
 
5207
        </varlistentry>
 
5208
 
4985
5209
      </variablelist>
4986
5210
    </sect1>
4987
5211
 
5461
5685
         <term>SymbolicTaylorApproximationFunction</term>
5462
5686
         <listitem>
5463
5687
          <synopsis>SymbolicTaylorApproximationFunction (f,x0,n)</synopsis>
5464
 
          <para>Zkusit sestavit Taylorův polynom do n-tého řádku se středem x0, který aproximuje zadanou funkci. (Viz <link linkend="gel-function-SymbolicDerivative"><function>SymbolicDerivative</function></link>)</para>
 
5688
          <para>Attempt to construct the Taylor approximation function around x0 to the nth degree.
 
5689
          (See <link linkend="gel-function-SymbolicDerivative"><function>SymbolicDerivative</function></link>)
 
5690
          </para>
5465
5691
         </listitem>
5466
5692
        </varlistentry>
5467
5693
      </variablelist>
5470
5696
    <sect1 id="genius-gel-function-list-plotting">
5471
5697
      <title>Vykreslování</title>
5472
5698
      <variablelist>
 
5699
        <varlistentry id="gel-function-ExportPlot">
 
5700
         <term>ExportPlot</term>
 
5701
         <listitem>
 
5702
          <synopsis>ExportPlot (file,type)</synopsis>
 
5703
          <synopsis>ExportPlot (file)</synopsis>
 
5704
          <para>
 
5705
                  Export the contents of the plotting window to a file.
 
5706
                  The type is a string that specifies the file type to
 
5707
                  use, "png", "eps", or "ps".  If the type is not
 
5708
                  specified, then it is taken to be the extension, in
 
5709
                  which case the extension must be ".png", ".eps", or ".ps".
 
5710
          </para>
 
5711
          <para>
 
5712
                  Note that files are overwritten without asking.
 
5713
          </para>
 
5714
          <para>
 
5715
                  On successful export, true is returned.  Otherwise
 
5716
                  error is printed and exception is raised.
 
5717
          </para>
 
5718
          <para>
 
5719
            Examples:
 
5720
          <screen><prompt>genius&gt;</prompt> <userinput>ExportPlot("file.png")</userinput>
 
5721
<prompt>genius&gt;</prompt> <userinput>ExportPlot("/directory/file","eps")</userinput>
 
5722
</screen>
 
5723
          </para>
 
5724
         </listitem>
 
5725
        </varlistentry>
 
5726
 
5473
5727
        <varlistentry id="gel-function-LinePlot">
5474
5728
         <term>LinePlot</term>
5475
5729
         <listitem>
5496
5750
         <listitem>
5497
5751
          <synopsis>LinePlotDrawLine (x1,y1,x2,y2,…)</synopsis>
5498
5752
          <synopsis>LinePlotDrawLine (v,…)</synopsis>
5499
 
          <para>Vykreslit čáru z <varname>x1</varname>,<varname>y1</varname> do <varname>x2</varname>,<varname>y2</varname>. <varname>x1</varname>,<varname>y1</varname>, <varname>x2</varname>,<varname>y2</varname> může být pro delší čáry nahrazeno maticí <varname>n</varname> krát 2.</para>
 
5753
          <para>
 
5754
            Draw a line from <varname>x1</varname>,<varname>y1</varname> to
 
5755
            <varname>x2</varname>,<varname>y2</varname>.
 
5756
            <varname>x1</varname>,<varname>y1</varname>,
 
5757
            <varname>x2</varname>,<varname>y2</varname> can be replaced by an
 
5758
            <varname>n</varname> by 2 matrix for a longer polyline.
 
5759
          </para>
5500
5760
          <para>Lze přidat doplňující parametry pro určení barvy čáry, tloušťky čáry, vykreslovacího okna a šipek. Dělá se to přidáním řetězce <userinput>"color"</userinput>, <userinput>"thickness"</userinput>, <userinput>"window"</userinput> nebo <userinput>"arrow"</userinput> následovaného barvou jako řetězec, tloušťkou jako celé číslo, oknem jako 4prvkový vektor a pro šipku buď <userinput>"origin"</userinput> (v počátku), <userinput>"end"</userinput> (na konci), <userinput>"both"</userinput> (na obou stranách) <userinput>"none"</userinput> (nikde). Pro <userinput>"window"</userinput> můžete místo vektoru zadat také <userinput>"fit"</userinput> a rozsah x pak bude nastaven přesně a rozsah y bude nastaven s pětiprocentními okraji okolo čáry. Nakonec je možné zadat pomocí <userinput>"legend"</userinput> řetězec s legendou.</para>
5501
5761
          <para>Příklady: <screen><prompt>genius&gt;</prompt> <userinput>LinePlotDrawLine(0,0,1,1,"color","blue","thickness",3)</userinput>
5502
5762
<prompt>genius&gt;</prompt> <userinput>LinePlotDrawLine([0,0;1,-1;-1,-1])</userinput>
5563
5823
         <listitem>
5564
5824
          <synopsis>SurfacePlot (fce)</synopsis>
5565
5825
          <synopsis>SurfacePlot (fce,x1,x2,y1,y2,z1,z2)</synopsis>
 
5826
          <synopsis>SurfacePlot (func,[x1,x2,y1,y2,z1,z2])</synopsis>
5566
5827
          <para>Vykreslit funkci plochy, která přebírá buď dva argumenty nebo komplexní číslo. Jako první se předává funkce, pak následují omezení <varname>x1</varname>, <varname>x2</varname>, <varname>y1</varname>, <varname>y2</varname>, <varname>z1</varname>, <varname>z2</varname>. Pokud žádná omezení nejsou zadána, použijí se aktuálně nastavená omezení (viz <link linkend="gel-function-LinePlotWindow"><function>SurfacePlotWindow</function></link>). V současnosti umí Genius vykreslovat jen funkci jedné plochy.</para>
5567
5828
          <para>Příklady: <screen><prompt>genius&gt;</prompt> <userinput>SurfacePlot(|sin|,-1,1,-1,1,0,1.5)</userinput>
5568
5829
<prompt>genius&gt;</prompt> <userinput>SurfacePlot(`(x,y)=x^2+y,-1,1,-1,1,-2,2)</userinput>
5571
5832
         </listitem>
5572
5833
        </varlistentry>
5573
5834
 
 
5835
        <varlistentry id="gel-function-SurfacePlotData">
 
5836
         <term>SurfacePlotData</term>
 
5837
         <listitem>
 
5838
          <synopsis>SurfacePlotData (data)</synopsis>
 
5839
          <synopsis>SurfacePlotData (data,label)</synopsis>
 
5840
          <synopsis>SurfacePlotData (data,x1,x2,y1,y2,z1,z2)</synopsis>
 
5841
          <synopsis>SurfacePlotData (data,label,x1,x2,y1,y2,z1,z2)</synopsis>
 
5842
          <synopsis>SurfacePlotData (data,[x1,x2,y1,y2,z1,z2])</synopsis>
 
5843
          <synopsis>SurfacePlotData (data,label,[x1,x2,y1,y2,z1,z2])</synopsis>
 
5844
          <para>
 
5845
                  Plot a surface from data.  The data is an n by 3 matrix whose
 
5846
                  rows are the x, y and z coordinates.  The data can also be
 
5847
                  simply a vector whose length is a multiple of 3 and so
 
5848
                  contains the tripples of x, y, z.  The data should contain at
 
5849
                  least 3 points.
 
5850
          </para>
 
5851
          <para>
 
5852
                  Optionally we can give the label and also optionally the
 
5853
                  limits.  If limits are not given, they are computed from
 
5854
                  the data, <link linkend="gel-function-SurfacePlotWindow"><function>SurfacePlotWindow</function></link>
 
5855
                  is not used, if you want to use it, pass it in explicitly.
 
5856
                  If label is not given then empty label is used.
 
5857
          </para>
 
5858
          <para>
 
5859
            Examples:
 
5860
          <screen><prompt>genius&gt;</prompt> <userinput>SurfacePlotData([0,0,0;1,0,1;0,1,1;1,1,3])</userinput>
 
5861
<prompt>genius&gt;</prompt> <userinput>SurfacePlotData(data,"My data")</userinput>
 
5862
<prompt>genius&gt;</prompt> <userinput>SurfacePlotData(data,-1,1,-1,1,0,10)</userinput>
 
5863
<prompt>genius&gt;</prompt> <userinput>SurfacePlotData(data,SurfacePlotWindow)</userinput>
 
5864
</screen>
 
5865
          </para>
 
5866
          <para>
 
5867
                  Here's an example of how to plot in polar coordinates,
 
5868
                  in particular how to plot the function
 
5869
                  <userinput>-r^2 * theta</userinput>:
 
5870
          <screen><prompt>genius&gt;</prompt> <userinput>d:=null; for r=0 to 1 by 0.1 do for theta=0 to 2*pi by pi/5 do d=[d;[r*cos(theta),r*sin(theta),-r^2*theta]];</userinput>
 
5871
<prompt>genius&gt;</prompt> <userinput>SurfacePlotData(d)</userinput>
 
5872
</screen>
 
5873
          </para>
 
5874
         </listitem>
 
5875
        </varlistentry>
 
5876
 
 
5877
        <varlistentry id="gel-function-SurfacePlotDataGrid">
 
5878
         <term>SurfacePlotDataGrid</term>
 
5879
         <listitem>
 
5880
          <synopsis>SurfacePlotDataGrid (data,[x1,x2,y1,y2])</synopsis>
 
5881
          <synopsis>SurfacePlotDataGrid (data,[x1,x2,y1,y2,z1,z2])</synopsis>
 
5882
          <synopsis>SurfacePlotDataGrid (data,[x1,x2,y1,y2],label)</synopsis>
 
5883
          <synopsis>SurfacePlotDataGrid (data,[x1,x2,y1,y2,z1,z2],label)</synopsis>
 
5884
          <para>
 
5885
                  Plot a surface from regular rectangular data.
 
5886
                  The data is given in a n by m matrix where the rows are the
 
5887
                  x coordinate and the columns are the y coordinate.
 
5888
                  The x coordinate is divided into equal n-1 subintervals
 
5889
                  and y coordinate is divided into equal m-1 subintervals.
 
5890
                  The limits <varname>x1</varname> and <varname>x2</varname>
 
5891
                  give the interval on the x-axis that we use, and 
 
5892
                  the limits <varname>y1</varname> and <varname>y2</varname>
 
5893
                  give the interval on the y-axis that we use.
 
5894
                  If the limits <varname>z1</varname> and <varname>z2</varname>
 
5895
                  are not given they are computed from the data (to be
 
5896
                  the extreme values from the data).
 
5897
          </para>
 
5898
          <para>
 
5899
                  Optionally we can give the label, if label is not given then
 
5900
                  empty label is used.
 
5901
          </para>
 
5902
          <para>
 
5903
            Examples:
 
5904
          <screen><prompt>genius&gt;</prompt> <userinput>SurfacePlotDataGrid([1,2;3,4],[0,1,0,1])</userinput>
 
5905
<prompt>genius&gt;</prompt> <userinput>SurfacePlotDataGrid(data,[-1,1,-1,1],"My data")</userinput>
 
5906
<prompt>genius&gt;</prompt> <userinput>d:=null; for i=1 to 20 do for j=1 to 10 d@(i,j) = (0.1*i-1)^2-(0.1*j)^2;</userinput>
 
5907
<prompt>genius&gt;</prompt> <userinput>SurfacePlotDataGrid(d,[-1,1,0,1],"half a saddle")</userinput>
 
5908
</screen>
 
5909
          </para>
 
5910
         </listitem>
 
5911
        </varlistentry>
 
5912
 
5574
5913
        <varlistentry id="gel-function-VectorfieldClearSolutions">
5575
5914
         <term>VectorfieldClearSolutions</term>
5576
5915
         <listitem>
5631
5970
    <para>Následuje větší příklad, který v podstatě předefinovává interní funkci <function>ref</function>, aby vypočítávala odstupňovaný kanonický tvar matice. Funkce <function>ref</function> je vestavěná a mnohem rychlejší, ale tento příklad má ilustrovat některé komplexnější vlastnosti jazyka GEL. <programlisting><![CDATA[# Calculate the row-echelon form of a matrix
5632
5971
function MyOwnREF(m) = (
5633
5972
  if not IsMatrix(m) or not IsValueOnly(m) then
5634
 
    (error("ref: argument not a value only matrix");bailout);
 
5973
    (error("MyOwnREF: argument not a value only matrix");bailout);
5635
5974
  s := min(rows(m), columns(m));
5636
5975
  i := 1;
5637
5976
  d := 1;
5804
6143
            <function>OutputStyle</function>
5805
6144
      </term> 
5806
6145
          <listitem>
5807
 
        <para>Řetězec, který může nabývat hodnot <literal>„normal“</literal>, <literal>„latex“</literal>, <literal>„mathml“</literal> nebo <literal>„troff“</literal> a bude ovlivňovat, jak se mají vypisovat matice (a samozřejmě i další věci), což je důležité pro vkládání do dokumentů. Styl Normal je výchozí styl výpisu <application>matematického nástroje Genius</application> čitelný pro člověka. Ostatní styly jsou pro sazbu v aplikacích LaTeX, MathML (XML) nebo Troff.</para>
 
6146
        <para>A string, can be <literal>"normal"</literal>,
 
6147
<literal>"latex"</literal>, <literal>"mathml"</literal> or
 
6148
<literal>"troff"</literal> and it will affect how matrices (and perhaps other
 
6149
stuff) is printed, useful for pasting into documents.  Normal style is the
 
6150
default human readable printing style of <application>Genius Mathematics Tool</application>.  The other styles are for
 
6151
typsetting in LaTeX, MathML (XML), or in Troff.</para>
5808
6152
          </listitem>
5809
6153
        </varlistentry>
5810
6154
      </variablelist>