# Bengali (India) translation for genius. # Copyright (C) 2025 genius's COPYRIGHT HOLDER # This file is distributed under the same license as the genius package. # FIRST AUTHOR , YEAR. # msgid "" msgstr "" "Project-Id-Version: genius master\n" "POT-Creation-Date: 2025-07-07 22:46+0000\n" "PO-Revision-Date: 2025-07-07 22:46+0000\n" "Last-Translator: FULL NAME \n" "Language-Team: Bengali (India) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Language: bn\n" #. (itstool) path: para/ulink #: C/legal.xml:9 msgid "link" msgstr "" #. (itstool) path: legalnotice/para #: C/legal.xml:2 msgid "" "Permission is granted to copy, distribute and/or modify this document under " "the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any " "later version published by the Free Software Foundation with no Invariant " "Sections, no Front-Cover Texts, and no Back-Cover Texts. You can find a copy " "of the GFDL at this <_:ulink-1/> or in the file COPYING-DOCS distributed " "with this manual." msgstr "" #. (itstool) path: legalnotice/para #: C/legal.xml:12 msgid "" "This manual is part of a collection of GNOME manuals distributed under the " "GFDL. If you want to distribute this manual separately from the collection, " "you can do so by adding a copy of the license to the manual, as described in " "section 6 of the license." msgstr "" #. (itstool) path: legalnotice/para #: C/legal.xml:19 msgid "" "Many of the names used by companies to distinguish their products and " "services are claimed as trademarks. Where those names appear in any GNOME " "documentation, and the members of the GNOME Documentation Project are made " "aware of those trademarks, then the names are in capital letters or initial " "capital letters." msgstr "" #. (itstool) path: listitem/para #: C/legal.xml:35 msgid "" "DOCUMENT IS PROVIDED ON AN \"AS IS\" BASIS, WITHOUT WARRANTY OF ANY KIND, " "EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT " "THE DOCUMENT OR MODIFIED VERSION OF THE DOCUMENT IS FREE OF DEFECTS " "MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE " "RISK AS TO THE QUALITY, ACCURACY, AND PERFORMANCE OF THE DOCUMENT OR " "MODIFIED VERSION OF THE DOCUMENT IS WITH YOU. SHOULD ANY DOCUMENT OR " "MODIFIED VERSION PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL " "WRITER, AUTHOR OR ANY CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY " "SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN " "ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY DOCUMENT OR MODIFIED VERSION " "OF THE DOCUMENT IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER; AND" msgstr "" #. (itstool) path: listitem/para #: C/legal.xml:55 msgid "" "UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER IN TORT (INCLUDING " "NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL THE AUTHOR, INITIAL WRITER, ANY " "CONTRIBUTOR, OR ANY DISTRIBUTOR OF THE DOCUMENT OR MODIFIED VERSION OF THE " "DOCUMENT, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON " "FOR ANY DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF " "ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, " "WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER DAMAGES " "OR LOSSES ARISING OUT OF OR RELATING TO USE OF THE DOCUMENT AND MODIFIED " "VERSIONS OF THE DOCUMENT, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE " "POSSIBILITY OF SUCH DAMAGES." msgstr "" #. (itstool) path: legalnotice/para #: C/legal.xml:28 msgid "" "DOCUMENT AND MODIFIED VERSIONS OF THE DOCUMENT ARE PROVIDED UNDER THE TERMS " "OF THE GNU FREE DOCUMENTATION LICENSE WITH THE FURTHER UNDERSTANDING THAT: " "<_:orderedlist-1/>" msgstr "" #. Put one translator per line, in the form NAME , YEAR1, YEAR2 msgctxt "_" msgid "translator-credits" msgstr "" #. (itstool) path: abstract/para #: C/genius.xml:36 msgid "Manual for the Genius Math Tool." msgstr "" #. (itstool) path: bookinfo/title #: C/genius.xml:37 msgid "Genius Manual" msgstr "" #. (itstool) path: bookinfo/copyright #: C/genius.xml:39 msgid "1997-2021 Jiří (George) Lebl" msgstr "" #. (itstool) path: bookinfo/copyright #: C/genius.xml:43 msgid "2004 Kai Willadsen" msgstr "" #. (itstool) path: authorgroup/author #: C/genius.xml:64 msgid "" "Jiří Lebl " "Oklahoma State University
" "jiri.lebl@gmail.com
" msgstr "" #. (itstool) path: authorgroup/author #: C/genius.xml:72 msgid "" "Kai Willadsen " "University of Queensland, Australia
" "kaiw@itee.uq.edu.au
" msgstr "" #. (itstool) path: revdescription/para #: C/genius.xml:148 msgid "Jiri (George) Lebl jiri.lebl@gmail.com" msgstr "" #. (itstool) path: revhistory/revision #: C/genius.xml:144 msgid "" "0.2 October 2021 <_:revdescription-1/>" msgstr "" #. (itstool) path: bookinfo/releaseinfo #: C/genius.xml:154 msgid "This manual describes version 1.0.27 of Genius." msgstr "" #. (itstool) path: legalnotice/title #: C/genius.xml:157 msgid "Feedback" msgstr "" #. (itstool) path: legalnotice/para #: C/genius.xml:158 msgid "" "To report a bug or make a suggestion regarding the Genius " "Mathematics Tool application or this manual, please visit the " "Genius Web " "page or email me at jiri.lebl@gmail.com." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:171 msgid "Introduction" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:172 msgid "" "The Genius Mathematics Tool application is a " "general calculator for use as a desktop calculator, an educational tool in " "mathematics and other STEM fields, and has found use in research. The " "language used in Genius Mathematics Tool is " "designed to be ‘mathematical’ in the sense that it should be ‘what you mean " "is what you get’. Of course, that is not an entirely attainable goal. " "Genius Mathematics Tool features rationals, " "arbitrary precision integers and multiple precision floats using the GMP " "library. It handles complex numbers using cartesian notation. It has good " "vector and matrix manipulation and can handle basic linear algebra. The " "programming language allows user defined functions, variables, and " "parameters." msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:186 msgid "" "Genius Mathematics Tool comes in two versions. " "One version is the graphical GNOME version, which features an IDE style " "interface and the ability to plot functions of one or two variables. " "Parametric plots of curves are also supported. It can plot slope fields, " "vector fields and draw their solutions. The plots can be exported to several " "formats. The command line version does not require GNOME, but does not " "implement any feature that requires the graphical interface, such as plotting" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:198 msgid "" "Parts of this manual describe the graphical version of the calculator. The " "language that both versions use is the same, it is simply the graphical " "features such as plotting that are unique to the GUI version." msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:204 msgid "" "Generally, when some feature of the language (function, operator, etc...) is " "new in some version past 1.0.5, it is mentioned, but below 1.0.5 you would " "have to look at the NEWS file." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:214 msgid "Getting Started" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:217 msgid "To Start Genius Mathematics Tool" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:218 msgid "" "You can start Genius Mathematics Tool in the " "following ways:" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:222 msgid "Applications menu" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:224 msgid "" "Depending on your operating system and version, the menu item for " "Genius Mathematics Tool could appear in a number " "of different places. It can be in the Education, " "Accessories, Office, " "Science, or similar submenu, depending on your " "particular setup. The menu item name you are looking for is " "Genius Math Tool. Once you locate this menu item " "click on it to start Genius Mathematics Tool." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:240 msgid "Run dialog" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:242 msgid "" "Depending on your system installation the menu item may not be available. If " "it is not, you can open the Run dialog and execute gnome-genius." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:250 msgid "Command line" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:252 msgid "" "To start the GNOME version of Genius Mathematics Tool execute gnome-genius from the command line." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:256 msgid "" "To start the command line only version, execute the following command: " "genius. This version does not include the graphical " "environment and some functionality such as plotting will not be available." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:268 msgid "When You Start Genius" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:269 msgid "" "When you start the GNOME edition of Genius Mathematics Tool, the window pictured in is " "displayed." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:274 msgid "Genius Mathematics Tool Window" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:279 msgctxt "_" msgid "" "external ref='figures/genius_window.png' " "md5='30949c611b0d473aed2e1658e9d4bf49'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:276 msgid "" " Shows " "Genius Mathematics Tool main window. Contains " "titlebar, menubar, toolbar and working area. Menubar contains " "File, Edit, Calculator, Examples, Programs, " "Settings, and Help menus. " "" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:293 msgid "" "The Genius Mathematics Tool window contains the " "following elements:" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:297 msgid "Menubar." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:299 msgid "" "The menus on the menubar contain all of the commands that you need to work " "with files in Genius Mathematics Tool. The " "File menu contains items for loading and saving items " "and creating new programs. The Load and Run... command " "does not open a new window for the program, but just executes the program " "directly. It is equivalent to the load command." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:304 msgid "" "The Calculator menu controls the calculator engine. It " "allows you to run the currently selected program or to interrupt the current " "calculation. You can also look at the full expression of the last answer " "(useful if the last answer was too large to fit onto the console), or you " "can view a listing of the values of all user defined variables. You can also " "monitor user variables, which is especially useful while a long calculation " "is running, or to debug a certain program. Finally the Calculator allows plotting functions using a user friendly dialog box." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:314 msgid "" "The Examples menu is a list of example programs or " "demos. If you open the menu, it will load the example into a new program, " "which you can run, edit, modify, and save. These programs should be well " "documented and generally demonstrate either some feature of " "Genius Mathematics Tool or some mathematical " "concept." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:322 msgid "" "The Programs menu lists the currently open programs and " "allows you to switch between them." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:327 msgid "The other menus have same familiar functions as in other applications." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:333 msgid "Toolbar." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:335 msgid "" "The toolbar contains a subset of the commands that you can access from the " "menubar." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:339 msgid "Working area" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:341 msgid "" "The working area is the primary method of interacting with the application." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:345 msgid "" "The working area initially has just the Console tab, " "which is the main way of interacting with the calculator. Here you type " "expressions and the results are immediately returned after you hit the Enter " "key." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:351 msgid "" "Alternatively you can write longer programs and those can appear in separate " "tabs. The programs are a set of commands or functions that can be run all at " "once rather than entering them at the command line. The programs can be " "saved in files for later retrieval." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:367 msgid "Basic Usage" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:370 msgid "Using the Work Area" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:372 msgid "" "Normally you interact with the calculator in the Console tab of the work area. If you are running the text only version " "then the console will be the only thing that is available to you. If you " "want to use Genius Mathematics Tool as a " "calculator only, just type in your expression in the console, it will be " "evaluated, and the returned value will be printed." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:385 #, no-wrap msgid "genius> 30*70 + 67^3.0 + ln(7) * (88.8/100)\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:388 #, no-wrap msgid "genius> 62734 + 812634 + 77^4 mod 5\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:391 #, no-wrap msgid "genius> | sin(37) - e^7 |\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:394 #, no-wrap msgid "genius> sum n=1 to 70 do 1/n\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:380 msgid "" "To evaluate an expression, type it into the Console " "work area and press enter. Expressions are written in a language called GEL. " "The most simple GEL expressions just looks like mathematics. For example " "<_:screen-1/> or <_:screen-2/> or <_:screen-3/> or <_:screen-4/> (Last is " "the harmonic sum from 1 to 70)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:400 #, no-wrap msgid "genius> help\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:403 #, no-wrap msgid "genius> help FunctionName\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:406 #, no-wrap msgid "genius> manual\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:398 msgid "" "To get a list of functions and commands, type: <_:screen-1/> If you wish to " "get more help on a specific function, type: <_:screen-2/> To view this " "manual, type: <_:screen-3/>" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:414 #, no-wrap msgid "genius> load path/to/program.gel\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:409 msgid "" "Suppose you have previously saved some GEL commands as a program to a file " "and you now want to execute them. To load this program from the file " "path/to/program.gel, type <_:screen-1/> " "Genius Mathematics Tool keeps track of the " "current directory. To list files in the current directory type ls, to change directory do cd directory as in " "the UNIX command shell." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:423 msgid "To Create a New Program" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:424 msgid "" "If you wish to enter several more complicated commands, or perhaps write a " "complicated function using the GEL " "language, you can create a new program; really just a file with many " "commands." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:429 msgid "" "To start writing a new program, choose FileNew Program. A new tab will " "appear in the work area. You can write a GEL program in this work area. Once you have written your program you can " "run it by CalculatorRun (or the Run toolbar button). " "This will execute your program and will display any output on the " "Console tab. Executing a program is equivalent of " "taking the text of the program and typing it into the console. The only " "difference is that this input is done independent of the console and just " "the output goes onto the console. CalculatorRun will always run the " "currently selected program even if you are on the Console tab. The currently selected program has its tab in bold type. To " "select a program, just click on its tab." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:446 msgid "" "To save the program you've just written, choose FileSave As.... Similarly as in " "other programs you can choose FileSave to save a program that " "already has a filename attached to it. If you have many opened programs you " "have edited and wish to save you can also choose FileSave All Unsaved." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:453 msgid "" "Programs that have unsaved changes will have a \"[+]\" next to their " "filename. This way you can see if the file on disk and the currently opened " "tab differ in content. Programs which have not yet had a filename associated " "with them are always considered unsaved and no \"[+]\" is printed." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:461 msgid "To Open and Run a Program" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:462 msgid "" "To open a file, choose FileOpen. A new tab containing the file will appear in the " "work area. You can use this to edit the file." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:468 msgid "" "To run a program from a file, choose FileLoad and Run.... This will " "run the program without opening it in a separate tab. This is equivalent to " "the load command." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:474 msgid "" "If you have made edits to a file you wish to throw away and want to reload " "to the version that's on disk, you can choose the FileReload from Disk menuitem. " "This is useful for experimenting with a program and making temporary edits, " "to run a program, but that you do not intend to keep." msgstr "" #. (itstool) path: chapter/title #. (itstool) path: sect1/title #: C/genius.xml:486 C/genius.xml:8870 msgid "Plotting" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:488 msgid "" "Plotting support is only available in the graphical GNOME version. All " "plotting accessible from the graphical interface is available from the " "Create Plot window. You can access this window by " "either clicking on the Plot button on the toolbar or " "selecting Plot from the Calculator " "menu. You can also access the plotting functionality by using the plotting functions of " "the GEL language. See to find out how to " "enter expressions that Genius understands." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:501 msgid "Line Plots" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:502 msgid "" "To graph real-valued functions of one variable, open the Create " "Plot window. You can also use the LinePlot function on the command line " "(see its documentation). And by the words line plot, we mean plots in the " "plane, as opposed to surface plots, which are in three dimensions." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:509 msgid "" "Once you click the Plot button, a window opens up with " "some notebooks in it. You want to be in the Function line plot notebook tab, and inside you want to be on the " "Functions / Expressions notebook tab. See ." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:517 msgid "Create Plot Window" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:521 msgctxt "_" msgid "" "external ref='figures/line_plot.png' md5='a9434af040a158a4d1440a03edd0e873'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:519 msgid "" " Shows the line plotting " "window. " msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:530 msgid "" "Type expressions with x as the independent variable " "into the textboxes. Alternatively you can give names of functions such as " "cos rather then having to type cos(x). You can graph up to ten functions. If you make a mistake and " "Genius cannot parse the input it will signify this with a warning icon on " "the right of the text input box where the error occurred, as well as giving " "you an error dialog. You can change the ranges of the dependent and " "independent variables in the bottom part of the dialog. In the boxes for the " "ranges, simple expressions are allowed, such as 2*pi " "or 10^3. The y (dependent) range " "can be set automatically by turning on the Fit dependent axis checkbox. The names of the variables can also be changed. Pressing " "the Plot button produces the graph shown in ." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:545 msgid "" "The variables can be renamed by clicking the Change variable " "names... button, which is useful if you wish to print or save the " "figure and don't want to use the standard names. Finally you can also avoid " "printing the legend and the axis labels completely, which is also useful if " "printing or saving, when the legend might simply be clutter." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:553 msgid "Plot Window" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:557 msgctxt "_" msgid "" "external ref='figures/line_plot_graph.png' " "md5='38c25568f3143571cd5789f364e98776'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:555 msgid "" " The " "graph produced. " msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:566 msgid "" "From here you can print out the plot, create encapsulated postscript or a " "PNG version of the plot or change the zoom. If the dependent axis was not " "set correctly you can have Genius fit it by finding out the extrema of the " "graphed functions." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:573 msgid "" "For plotting using the command line see the documentation of the LinePlot " "function." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:580 msgid "Parametric Plots" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:581 msgid "" "In the create plot window, you can also choose the Parametric notebook tab to create two dimensional parametric plots. This way " "you can plot a single parametric function. You can either specify the points " "as x and y, or giving a single complex " "number as a function of the variable t. The range of the " "variable t is given explicitly, and the function is " "sampled according to the given increment. The x and " "y range can be set automatically by turning on the " "Fit dependent axis checkbox, or it can be specified " "explicitly. See ." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:596 msgid "Parametric Plot Tab" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:600 msgctxt "_" msgid "" "external ref='figures/parametric.png' md5='a259ec34ff3909261009bf11b5054144'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:598 msgid "" " Parametric plotting tab " "in the Create Plot window. " msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:609 msgid "" "An example of a parametric plot is given in . Similar operations can be done on such graphs as can be done on the other " "line plots. For plotting using the command line see the documentation of the " "LinePlotParametric or LinePlotCParametric function." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:620 msgid "Parametric Plot" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:624 msgctxt "_" msgid "" "external ref='figures/parametric_graph.png' " "md5='3b291065f178a30e900948574ab0891a'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:622 msgid "" " " "Parametric plot produced " msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:636 msgid "Slopefield Plots" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:637 msgid "" "In the create plot window, you can also choose the Slope field notebook tab to create a two dimensional slope field plot. Similar " "operations can be done on such graphs as can be done on the other line " "plots. For plotting using the command line see the documentation of the " "SlopefieldPlot function." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:646 msgid "" "When a slope field is active, there is an extra Solver " "menu available, through which you can bring up the solver dialog. Here you " "can have Genius plot specific solutions for the given initial conditions. " "You can either specify initial conditions in the dialog, or you can click on " "the plot directly to specify the initial point. While the solver dialog is " "active, the zooming by clicking and dragging does not work. You have to " "close the dialog first if you want to zoom using the mouse." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:655 msgid "" "The solver uses the standard Runge-Kutta method. The plots will stay on the " "screen until cleared. The solver will stop whenever it reaches the boundary " "of the plot window. Zooming does not change the limits or parameters of the " "solutions, you will have to clear and redraw them with appropriate " "parameters. You can also use the SlopefieldDrawSolution " "function to draw solutions from the command line or programs." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:668 msgid "Vectorfield Plots" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:669 msgid "" "In the create plot window, you can also choose the Vector field notebook tab to create a two dimensional vector field plot. " "Similar operations can be done on such graphs as can be done on the other " "line plots. For plotting using the command line see the documentation of the " "VectorfieldPlot function." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:678 msgid "" "By default the direction and magnitude of the vector field is shown. To only " "show direction and not the magnitude, check the appropriate checkbox to " "normalize the arrow lengths." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:684 msgid "" "When a vector field is active, there is an extra Solver " "menu available, through which you can bring up the solver dialog. Here you " "can have Genius plot specific solutions for the given initial conditions. " "You can either specify initial conditions in the dialog, or you can click on " "the plot directly to specify the initial point. While the solver dialog is " "active, the zooming by clicking and dragging does not work. You have to " "close the dialog first if you want to zoom using the mouse." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:693 msgid "" "The solver uses the standard Runge-Kutta method. The plots will stay on the " "screen until cleared. Zooming does not change the limits or parameters of " "the solutions, you will have to clear and redraw them with appropriate " "parameters. You can also use the VectorfieldDrawSolution function to draw solutions from the command line or programs." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:706 msgid "Surface Plots" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:707 msgid "" "Genius can also plot surfaces. Select the Surface plot " "tab in the main notebook of the Create Plot window. " "Here you can specify a single expression that should use either x and y as real independent variables or " "z as a complex variable (where x is " "the real part of z and y is the " "imaginary part). For example to plot the modulus of the cosine function for " "complex parameters, you could enter |cos(z)|. This " "would be equivalent to |cos(x+1i*y)|. See . For plotting using the command line see the " "documentation of the SurfacePlot function." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:720 msgid "" "The z range can be set automatically by turning on the " "Fit dependent axis checkbox. The variables can be " "renamed by clicking the Change variable names... " "button, which is useful if you wish to print or save the figure and don't " "want to use the standard names. Finally you can also avoid printing the " "legend, which is also useful if printing or saving, when the legend might " "simply be clutter." msgstr "" #. (itstool) path: figure/title #: C/genius.xml:728 msgid "Surface Plot" msgstr "" #. (itstool) path: imageobject/imagedata #. This is a reference to an external file such as an image or video. When #. the file changes, the md5 hash will change to let you know you need to #. update your localized copy. The msgstr is not used at all. Set it to #. whatever you like once you have updated your copy of the file. #: C/genius.xml:732 msgctxt "_" msgid "" "external ref='figures/surface_graph.png' " "md5='3d94846b0f4103be5d99f502630185f9'" msgstr "" #. (itstool) path: screenshot/mediaobject #: C/genius.xml:730 msgid "" " Modulus " "of the complex cosine function. " msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:741 msgid "" "In surface mode, left and right arrow keys on your keyboard will rotate the " "view along the z axis. Alternatively you can rotate along any axis by " "selecting Rotate axis... in the View menu. The View menu also has a top view mode " "which rotates the graph so that the z axis is facing straight out, that is, " "we view the graph from the top and get essentially just the colors that " "define the values of the function getting a temperature plot of the " "function. Finally you should try Start rotate animation, to start a continuous slow rotation. This is especially good if " "using Genius Mathematics Tool to present to an " "audience." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:759 msgid "GEL Basics" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:761 msgid "" "GEL stands for Genius Extension Language. It is the language you use to " "write programs in Genius. A program in GEL is simply an expression that " "evaluates to a number, a matrix, or another object in GEL. " "Genius Mathematics Tool can be used as a simple " "calculator, or as a powerful theoretical research tool. The syntax is meant " "to have as shallow of a learning curve as possible, especially for use as a " "calculator." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:774 msgid "Values" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:776 msgid "" "Values in GEL can be numbers, Booleans, or " "strings. GEL also treats " "matrices as values. Values can " "be used in calculations, assigned to variables and returned from functions, " "among other uses." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:783 msgid "Numbers" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:786 #, no-wrap msgid "1234\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:789 #, no-wrap msgid "" "0x123ABC\n" "01234\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:793 #, no-wrap msgid "23\\1234ABCD\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:784 msgid "" "Integers are the first type of number in GEL. Integers are written in the " "normal way. <_:programlisting-1/> Hexadecimal and octal numbers can be " "written using C notation. For example: <_:programlisting-2/> Or you can type " "numbers in an arbitrary base using <base>\\<number>. Digits higher than 10 use letters in a similar way to hexadecimal. " "For example, a number in base 23 could be written: <_:programlisting-3/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:799 #, no-wrap msgid "3/4\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:802 #, no-wrap msgid "1 3/10\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:797 msgid "" "The second type of GEL number is rationals. Rationals are simply achieved by " "dividing two integers. So one could write: <_:programlisting-1/> to get " "three quarters. Rationals also accept mixed fraction notation. So in order " "to get one and three tenths you could write: <_:programlisting-2/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:808 #, no-wrap msgid "" "1.315\n" "7.887e77\n" "7.887e-77\n" ".3\n" "0.3\n" "77e5\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:806 msgid "" "The next type of number is floating point. These are entered in a similar " "fashion to C notation. You can use E, e or @ as the exponent delimiter. Note that using " "the exponent delimiter gives a float even if there is no decimal point in " "the number. Examples: <_:programlisting-1/> When Genius prints a floating " "point number it will always append a .0 " "even if the number is whole. This is to indicate that floating point numbers " "are taken as imprecise quantities. When a number is written in the " "scientific notation, it is always a floating point number and thus Genius " "does not print the .0." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:824 #, no-wrap msgid "" "1+2i\n" "8.01i\n" "77*e^(1.3i)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:822 msgid "" "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 i. Here are examples of entering complex " "numbers: <_:programlisting-1/>" msgstr "" #. (itstool) path: important/para #: C/genius.xml:831 msgid "" "When entering imaginary numbers, a number must be in front of the " "i. If you use i by itself, Genius will " "interpret this as referring to the variable i. If you " "need to refer to i by itself, use 1i " "instead." msgstr "" #. (itstool) path: important/para #: C/genius.xml:835 msgid "" "In order to use mixed fraction notation with imaginary numbers you must have " "the mixed fraction in parentheses. (i.e., (1 2/5)i)" msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:844 msgid "Booleans" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:845 msgid "" "Genius also supports native Boolean values. The two Boolean constants are " "defined as true and false; these " "identifiers can be used like any other variable. You can also use the " "identifiers True, TRUE, " "False and FALSE as aliases for the " "above." msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:853 msgid "" "At any place where a Boolean expression is expected, you can use a Boolean " "value or any expression that produces either a number or a Boolean. If " "Genius needs to evaluate a number as a Boolean it will interpret 0 as " "false and any other number as true." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:862 #, no-wrap msgid "( (1 + true) - false ) * true\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:865 #, no-wrap msgid "( (true or true) or not false ) and true\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:868 #, no-wrap msgid "1 == true\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:860 msgid "" "In addition, you can do arithmetic with Boolean values. For example: " "<_:programlisting-1/> is the same as: <_:programlisting-2/> Only addition, " "subtraction and multiplication are supported. If you mix numbers with " "Booleans in an expression then the numbers are converted to Booleans as " "described above. This means that, for example: <_:programlisting-3/> always " "evaluates to true since 1 will be converted to " "true before being compared to true." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:876 msgid "Strings" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:879 #, no-wrap msgid "a=2+3;\"The result is: \"+a\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:882 #, no-wrap msgid "The result is: 5\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:885 #, no-wrap msgid "\"Slash: \\\\ Quotes: \\\" Tabs: \\t1\\t2\\t3\"\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:888 #, no-wrap msgid "Slash: \\ Quotes: \" Tabs: \t1\t2\t3\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:877 msgid "" "Like numbers and Booleans, strings in GEL can be stored as values inside " "variables and passed to functions. You can also concatenate a string with " "another value using the plus operator. For example: <_:programlisting-1/> " "will create the string: <_:programlisting-2/> You can also use C-like escape " "sequences such as \\n,\\t," "\\b,\\a and \\r. To " "get a \\ or \" into the string you can " "quote it with a \\. For example: <_:programlisting-3/> " "will make a string: <_:programlisting-4/> Do note however that when a string " "is returned from a function, escapes are quoted, so that the output can be " "used as input. If you wish to print the string as it is (without escapes), " "use the print or printn functions." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:899 #, no-wrap msgid "string(22)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:902 #, no-wrap msgid "\"22\"\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:897 msgid "" "In addition, you can use the library function string to convert anything to a string. " "For example: <_:programlisting-1/> will return <_:programlisting-2/> Strings " "can also be compared with == (equal), != (not equal) and <=> (comparison) operators" msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:910 msgid "Null" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:911 msgid "" "There is a special value called null. No operations can " "be performed on it, and nothing is printed when it is returned. Therefore, " "null is useful when you do not want output from an " "expression. The value null can be obtained as an " "expression when you type ., the constant null or nothing. By nothing we mean that if you end an expression with " "a separator ;, it is equivalent to ending it with a " "separator followed by a null." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:924 #, no-wrap msgid "" "x=5;.\n" "x=5;\n" msgstr "" #. (itstool) path: sect2/para #. (itstool) path: sect1/para #: C/genius.xml:922 C/genius.xml:2254 msgid "Example: <_:programlisting-1/>" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:928 msgid "" "Some functions return null when no value can be " "returned or an error happened. Also null is used as an " "empty vector or matrix, or an empty reference." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:938 msgid "Using Variables" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:942 #, no-wrap msgid "VariableName\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:945 #, no-wrap msgid "" "genius> e\n" "= 2.71828182846\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:940 msgid "Syntax: <_:programlisting-1/> Example: <_:screen-2/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:950 msgid "" "To evaluate a variable by itself, just enter the name of the variable. This " "will return the value of the variable. You can use a variable anywhere you " "would normally use a number or string. In addition, variables are necessary " "when defining functions that take arguments (see )." msgstr "" #. (itstool) path: tip/title #: C/genius.xml:955 C/genius.xml:1044 msgid "Using Tab completion" msgstr "" #. (itstool) path: tip/para #: C/genius.xml:956 msgid "" "You can use Tab completion to get Genius to complete variable names for you. " "Try typing the first few letters of the name and pressing Tab." msgstr "" #. (itstool) path: important/title #: C/genius.xml:962 msgid "Variable names are case sensitive" msgstr "" #. (itstool) path: important/para #: C/genius.xml:963 msgid "" "The names of variables are case sensitive. That means that variables named " "hello, HELLO and Hello are all different variables." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:970 msgid "Setting Variables" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:973 #, no-wrap msgid "" "<identifier> = <value>\n" "<identifier> := <value>\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:977 #, no-wrap msgid "" "x = 3\n" "x := 3\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:971 msgid "Syntax: <_:programlisting-1/> Example: <_:programlisting-2/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:984 #, no-wrap msgid "a = b = 5\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:982 msgid "" "To assign a value to a variable, use the = or " ":= operators. These operators set the value of the " "variable and return the value you set, so you can do things like " "<_:programlisting-1/> This will set b to 5 and then also " "set a to 5." msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:989 msgid "" "The = and := operators can both be " "used to set variables. The difference between them is that the := operator always acts as an assignment operator, whereas the " "= operator may be interpreted as testing for equality " "when used in a context where a Boolean expression is expected." msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:993 msgid "" "For more information about the scope of variables, that is when are what " "variables visible, see ." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1000 msgid "Built-in Variables" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1001 msgid "" "GEL has a number of built-in ‘variables’, such as e, " "pi or GoldenRatio. These are widely " "used constants with a preset value, and they cannot be assigned new values. " "There are a number of other built-in variables. See for a full list. Note that i is not by default the square root of negative one (the imaginary " "number), and is undefined to allow its use as a counter. If you wish to " "write the imaginary number you need to use 1i." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1014 msgid "Previous Result Variable" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1017 #, no-wrap msgid "Ans+389\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1015 msgid "" "The Ans and ans variables can be used " "to get the result of the last expression. For example, if you had performed " "some calculation, to add 389 to the result you could do: <_:programlisting-1/" ">" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1024 msgid "Using Functions" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1028 #, no-wrap msgid "FunctionName(argument1, argument2, ...)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1031 #, no-wrap msgid "" "Factorial(5)\n" "cos(2*pi)\n" "gcd(921,317)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1026 msgid "" "Syntax: <_:programlisting-1/> Example: <_:programlisting-2/> To evaluate a " "function, enter the name of the function, followed by the arguments (if any) " "to the function in parentheses. This will return the result of applying the " "function to its arguments. The number of arguments to the function is, of " "course, different for each function." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1039 msgid "" "There are many built-in functions, such as sin, cos and tan. You can use the help built-in command to get a " "list of available functions, or see for a full listing." msgstr "" #. (itstool) path: tip/para #: C/genius.xml:1045 msgid "" "You can use Tab completion to get Genius to complete function names for you. " "Try typing the first few letters of the name and pressing Tab." msgstr "" #. (itstool) path: important/title #: C/genius.xml:1051 msgid "Function names are case sensitive" msgstr "" #. (itstool) path: important/para #: C/genius.xml:1052 msgid "" "The names of functions are case sensitive. That means that functions named " "dosomething, DOSOMETHING and " "DoSomething are all different functions." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1059 msgid "Defining Functions" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1062 #, no-wrap msgid "" "function <identifier>(<comma separated arguments>) = <function body>\n" "<identifier> = (`() = <function body>)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1060 msgid "" "Syntax: <_:programlisting-1/> The ` is the backquote " "character, and signifies an anonymous function. By setting it to a variable " "name you effectively define a function." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1071 #, no-wrap msgid "function addup(a,b,c) = a+b+c\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1068 msgid "" "A function takes zero or more comma separated arguments, and returns the " "result of the function body. Defining your own functions is primarily a " "matter of convenience; one possible use is to have sets of functions defined " "in GEL files that Genius can load in order to make them available. Example: " "<_:programlisting-1/> then addup(1,4,9) yields 14" msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1078 msgid "Variable Argument Lists" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1081 #, no-wrap msgid "function f(a,b...) = b\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1079 msgid "" "If you include ... after the last argument name in the " "function declaration, then Genius will allow any number of arguments to be " "passed in place of that argument. If no arguments were passed then that " "argument will be set to null. Otherwise, it will be a " "horizontal vector containing all the arguments. For example: " "<_:programlisting-1/> Then f(1,2,3) yields " "[2,3], while f(1) " "yields a null." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1089 msgid "Passing Functions to Functions" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1091 msgid "" "In Genius, it is possible to pass a function as an argument to another " "function. This can be done using either ‘function nodes’ or anonymous " "functions." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1098 #, no-wrap msgid "" "function f(a,b) = a(b)+1;\n" "function b(x) = x*x;\n" "f(b,2)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1095 msgid "" "If you do not enter the parentheses after a function name, instead of being " "evaluated, the function will instead be returned as a ‘function node’. The " "function node can then be passed to another function. Example: " "<_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1107 #, no-wrap msgid "" "function(<comma separated arguments>) = <function body>\n" "`(<comma separated arguments>) = <function body>\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1111 #, no-wrap msgid "" "function f(a,b) = a(b)+1;\n" "f(`(x) = x*x,2)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1103 msgid "" "To pass functions that are not defined, you can use an anonymous function " "(see ). That is, you want " "to pass a function without giving it a name. Syntax: <_:programlisting-1/> " "Example: <_:programlisting-2/> This will return 5." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1120 msgid "Operations on Functions" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1123 #, no-wrap msgid "exp(sin*cos+4)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1127 #, no-wrap msgid "`(x) = exp(sin(x)*cos(x)+4)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1132 #, no-wrap msgid "f = exp(sin*cos+4)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1135 #, no-wrap msgid "LinePlot(sin^2)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1121 msgid "" "Some functions allow arithmetic operations, and some single argument " "functions such as exp or ln, to operate on the function. For example, " "<_:programlisting-1/> will return a function that takes x " "and returns exp(sin(x)*cos(x)+4). It is functionally " "equivalent to typing <_:programlisting-2/> This operation can be useful when " "quickly defining functions. For example to create a function called " "f to perform the above operation, you can just type: " "<_:programlisting-3/> It can also be used in plotting. For example, to plot " "sin squared you can enter: <_:programlisting-4/>" msgstr "" #. (itstool) path: warning/para #: C/genius.xml:1140 msgid "" "Not all functions can be used in this way. For example, when you use a " "binary operation the functions must take the same number of arguments." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1150 msgid "Separator" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1159 #, no-wrap msgid "3 ; 5\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1151 msgid "" "GEL is somewhat different from other languages in how it deals with multiple " "commands and functions. In GEL you must chain commands together with a " "separator operator. That is, if you want to type more than one expression " "you have to use the ; operator in between the " "expressions. This is a way in which both expressions are evaluated and the " "result of the second one (or the last one if there is more than two " "expressions) is returned. Suppose you type the following: " "<_:programlisting-1/> This expression will yield 5." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1163 msgid "" "This will require some parenthesizing to make it unambiguous sometimes, " "especially if the ; is not the top most primitive. This " "slightly differs from other programming languages where the ; is a terminator of statements, whereas in GEL it’s actually a " "binary operator. If you are familiar with pascal this should be second " "nature. However genius can let you pretend it is a terminator to some " "degree. If a ; is found at the end of a parenthesis or a " "block, genius will append a null to it as if you would have written " ";null. This is useful in case you do not want to " "return a value from a loop, or if you handle the return differently." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1175 msgid "" "If you are typing expressions in a program file you do not have to add a " "semicolon. In this case genius will simply print the return value whenever " "it executes the expression. This is the same as when typing on the command " "line. However, do note that if you are defining a function, the body of the " "function is a single expression. Usually, therefore, if a function body is " "long, you will need to enclose it in parentheses." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1185 msgid "Comments" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1190 #, no-wrap msgid "" "# This is just a comment\n" "# every line in a comment must have its own pound sign\n" "# in the next line we set x to the value 123\n" "x=123;\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1186 msgid "" "GEL is similar to other scripting languages in that # " "denotes a comment, that is text that is not meant to be evaluated. " "Everything beyond the pound sign till the end of line will just be ignored. " "For example, <_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1199 msgid "Modular Evaluation" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1200 msgid "" "Genius implements modular arithmetic. To use it you just add \"mod " "<integer>\" after the expression. Example: 2^(5!) * 3^(6!) " "mod 5 It could be possible to do modular arithmetic by computing " "with integers and then modding in the end with the % " "operator, which simply gives the remainder, but that may be time consuming " "if not impossible when working with larger numbers. For example, " "10^(10^10) % 6 will simply not work (the exponent " "will be too large), while 10^(10^10) mod 6 is " "instantaneous. The first expression first tries to compute the integer " "10^(10^10) and then find remainder after division by " "6, while the second expression evaluates everything modulo 6 to begin with." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1218 #, no-wrap msgid "" "10^-1 mod 101\n" "1/10 mod 101" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1223 #, no-wrap msgid "" "A = [1,2;3,4]\n" "B = A^-1 mod 5\n" "A*B mod 5" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1214 msgid "" "The inverses of numbers mod some integer are computed by writing them as " "rational numbers (as long as the desired inverse exists, of course). " "Examples: <_:programlisting-1/> Modular evaluation also works with matrices " "including taking inverses, powers, and dividing. Example: " "<_:programlisting-2/> This should yield the identity matrix as B will be the " "inverse of A mod 5." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1235 #, no-wrap msgid "" "genius> sqrt(4) mod 7\n" "=\n" "[2, 5]\n" "genius> 2*2 mod 7\n" "= 4" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1228 msgid "" "Some functions such as sqrt or log work in a different way when in modulo mode. These will " "then work like their discrete versions working within the ring of integers " "you selected. For example: <_:programlisting-1/> sqrt " "will actually return all the possible square roots." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1243 msgid "" "Do not chain mod operators, simply place it at the end of the computation, " "all computations in the expression on the left will be carried out in mod " "arithmetic. If you place a mod inside a mod, you will get unexpected " "results. If you simply want to mod a single number and control exactly when " "remainders are taken, best to use the % operator. When " "you need to chain several expressions in modular arithmetic with different " "divisors, it may be best to just split up the expression into several and " "use temporary variables to avoid a mod inside a mod." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1256 msgid "List of GEL Operators" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1258 msgid "" "Everything in GEL is really just an expression. Expressions are stringed " "together with different operators. As we have seen, even the separator is " "simply a binary operator in GEL. Here is a list of the operators in GEL." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1266 msgid "a;b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1268 msgid "" "The separator, just evaluates both a and b, but returns only the result of b." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1280 msgid "a=b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1282 msgid "" "The assignment operator. This assigns b to a (a must be a valid lvalue) (note however that this operator may be translated " "to == if used in a place where boolean expression is " "expected)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1294 msgid "a:=b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1296 msgid "" "The assignment operator. Assigns b to a (a must be a valid lvalue). This is different from = " "because it never gets translated to a ==." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1307 msgid "|a|" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1309 msgid "" "Absolute value. In case the expression is a complex number the result will " "be the modulus (distance from the origin). For example: |3 * " "e^(1i*pi)| returns 3." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1316 msgid "" "See Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1325 msgid "a^b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1327 msgid "" "Exponentiation, raises a to the bth " "power." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1335 msgid "a.^b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1337 msgid "" "Element by element exponentiation. Raise each element of a matrix " "a to the bth power. Or if b is a matrix of the same size as a, then do the " "operation element by element. If a is a number and " "b is a matrix then it creates matrix of the same size as " "b with a raised to all the different " "powers in b." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1352 msgid "a+b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1354 msgid "" "Addition. Adds two numbers, matrices, functions or strings. If you add a " "string to anything the result will just be a string. If one is a square " "matrix and the other a number, then the number is multiplied by the identity " "matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1365 msgid "a-b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1367 msgid "Subtraction. Subtract two numbers, matrices or functions." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1375 msgid "a*b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1377 msgid "Multiplication. This is the normal matrix multiplication." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1385 msgid "a.*b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1387 msgid "" "Element by element multiplication if a and b are matrices." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1396 msgid "a/b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1398 msgid "" "Division. When a and b are just " "numbers this is the normal division. When they are matrices, then this is " "equivalent to a*b^-1." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1408 msgid "a./b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1410 msgid "" "Element by element division. Same as a/b for numbers, " "but operates element by element on matrices." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1419 msgid "a\\b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1421 msgid "Back division. That is this is the same as b/a." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1429 msgid "a.\\b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1431 msgid "Element by element back division." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1439 msgid "a%b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1441 msgid "" "The mod operator. This does not turn on the modular mode, but just returns the remainder of " "integer division a/b." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1452 msgid "a.%b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1454 msgid "" "Element by element mod operator. Returns the remainder after element by " "element integer division a./b." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1464 msgid "a mod b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1466 msgid "" "Modular evaluation operator. The expression a is " "evaluated modulo b. See . Some functions and operators behave differently " "modulo an integer." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1477 msgid "a!" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1479 msgid "" "Factorial operator. This is like 1*...*(n-2)*(n-1)*n." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1488 msgid "a!!" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1490 msgid "" "Double factorial operator. This is like 1*...*(n-4)*(n-2)*n." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1499 msgid "a==b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1501 msgid "" "Equality operator. Returns true or false depending on a and b being " "equal or not." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1511 msgid "a!=b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1513 msgid "" "Inequality operator, returns true if a does not equal b else returns false." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1523 msgid "a<>b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1525 msgid "" "Alternative inequality operator, returns true if " "a does not equal b else returns " "false." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1535 msgid "a<=b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1537 msgid "" "Less than or equal operator, returns true if " "a is less than or equal to b else " "returns false. These can be chained as in a " "<= b <= c (can also be combined with the less than " "operator)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1550 msgid "a>=b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1552 msgid "" "Greater than or equal operator, returns true if " "a is greater than or equal to b else " "returns false. These can be chained as in a " ">= b >= c (and they can also be combined with the greater " "than operator)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1564 msgid "a<b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1566 msgid "" "Less than operator, returns true if a is less than b else returns false. These can be chained as in a < b < c " "(they can also be combined with the less than or equal to operator)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1579 msgid "a>b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1581 msgid "" "Greater than operator, returns true if a is greater than b else returns false. These can be chained as in a > b > c " "(they can also be combined with the greater than or equal to operator)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1594 msgid "a<=>b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1596 msgid "" "Comparison operator. If a is equal to b it returns 0, if a is less than b it returns -1 and if a is greater than " "b it returns 1." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1608 msgid "a and b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1610 msgid "" "Logical and. Returns true if both a and b are true, else returns false. If given numbers, nonzero numbers are " "treated as true." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1621 msgid "a or b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1623 msgid "" "Logical or. Returns true if either a or b is true, else returns false. If given numbers, nonzero numbers are " "treated as true." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1635 msgid "a xor b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1637 msgid "" "Logical xor. Returns true if exactly one of a or " "b is true, else returns false. If given numbers, nonzero " "numbers are treated as true." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1649 msgid "not a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1651 msgid "Logical not. Returns the logical negation of a." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1659 msgid "-a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1661 msgid "" "Negation operator. Returns the negative of a number or a matrix (works " "element-wise on a matrix)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1669 msgid "&a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1671 msgid "" "Variable referencing (to pass a reference to a variable). See ." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1680 C/genius.xml:2327 msgid "*a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1682 msgid "" "Variable dereferencing (to access a referenced variable). See ." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1691 msgid "a'" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1693 msgid "" "Matrix conjugate transpose. That is, rows and columns get swapped and we " "take complex conjugate of all entries. That is if the i,j element of " "a is x+iy, then the j,i element of a' is x-iy." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1702 msgid "a.'" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1704 msgid "" "Matrix transpose, does not conjugate the entries. That is, the i,j element " "of a becomes the j,i element of a.'." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1713 msgid "a@(b,c)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1715 msgid "" "Get element of a matrix in row b and column c. If b, c are vectors, then " "this gets the corresponding rows, columns or submatrices." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1726 msgid "a@(b,)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1728 msgid "" "Get row of a matrix (or multiple rows if b is a vector)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1736 msgid "a@(b,:)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1738 C/genius.xml:1759 msgid "Same as above." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1746 msgid "a@(,c)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1748 msgid "" "Get column of a matrix (or columns if c is a vector)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1757 msgid "a@(:,c)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1767 msgid "a@(b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1769 msgid "" "Get an element from a matrix treating it as a vector. This will traverse the " "matrix row-wise." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1778 msgid "a:b" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1782 #, no-wrap msgid "" "A@(2:4,)\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1780 msgid "" "Build a vector from a to b (or specify " "a row, column region for the @ operator). For example to " "get rows 2 to 4 of matrix A we could do " "<_:programlisting-1/> as 2:4 will return a vector " "[2,3,4]." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1792 msgid "a:b:c" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1797 #, no-wrap msgid "" "genius> 1:2:9\n" "=\n" "`[1, 3, 5, 7, 9]\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1794 msgid "" "Build a vector from a to c with " "b as a step. That is for example <_:programlisting-1/>" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1802 msgid "" "When the numbers involved are floating point numbers, for example " "1.0:0.4:3.0, the output is what is expected even " "though adding 0.4 to 1.0 five times is actually just slightly more than 3.0 " "due to the way that floating point numbers are stored in base 2 (there is no " "0.4, the actual number stored is just ever so slightly bigger). The way this " "is handled is the same as in the for, sum, and prod loops. If the end is " "within 2^-20 times the step size of the endpoint, the " "endpoint is used and we assume there were roundoff errors. This is not " "perfect, but it handles the majority of the cases. This check is done only " "from version 1.0.18 onwards, so execution of your code may differ on older " "versions. If you want to avoid dealing with this issue, use actual rational " "numbers, possibly using the float if you wish to get " "floating point numbers in the end. For example 1:2/5:3 does the right thing and float(1:2/5:3) " "even gives you floating point numbers and is ever so slightly more precise " "than 1.0:0.4:3.0." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1828 msgid "(a)i" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1834 #, no-wrap msgid "" "(a)*1i\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1830 msgid "" "Make a into an imaginary number (multiply a by the imaginary). Normally the imaginary number i is written as 1i. So the above is equal to " "<_:programlisting-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1842 msgid "`a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1844 msgid "" "Quote an identifier so that it doesn't get evaluated. Or quote a matrix so " "that it doesn't get expanded." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1852 msgid "a swapwith b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1854 msgid "" "Swap value of a with the value of b. " "Currently does not operate on ranges of matrix elements. It returns " "null. Available from version 1.0.13." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1865 msgid "increment a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1867 msgid "" "Increment the variable a by 1. If a is " "a matrix, then increment each element. This is equivalent to " "a=a+1, but it is somewhat faster. It returns " "null. Available from version 1.0.13." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:1878 msgid "increment a by b" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:1880 msgid "" "Increment the variable a by b. If " "a is a matrix, then increment each element. This is " "equivalent to a=a+b, but it is somewhat faster. It " "returns null. Available from version 1.0.13." msgstr "" #. (itstool) path: note/para #: C/genius.xml:1894 msgid "" "The @() operator makes the : operator most useful. With this you can specify " "regions of a matrix. So that a@(2:4,6) is the rows 2,3,4 of the column 6. Or " "a@(,1:2) will get you the first two columns of a matrix. You can also assign " "to the @() operator, as long as the right value is a matrix that matches the " "region in size, or if it is any other type of value." msgstr "" #. (itstool) path: note/para #: C/genius.xml:1900 msgid "" "The comparison operators (except for the <=> operator, which behaves " "normally), are not strictly binary operators, they can in fact be grouped in " "the normal mathematical way, e.g.: (1<x<=y<5) is a legal boolean " "expression and means just what it should, that is (1<x and x≤y and y<5)" msgstr "" #. (itstool) path: note/para #: C/genius.xml:1906 msgid "" "The unitary minus operates in a different fashion depending on where it " "appears. If it appears before a number it binds very closely, if it appears " "in front of an expression it binds less than the power and factorial " "operators. So for example -1^k is really " "(-1)^k, but -foo(1)^k is " "really -(foo(1)^k). So be careful how you use it and " "if in doubt, add parentheses." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:1921 msgid "Programming with GEL" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1924 msgid "Conditionals" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1927 #, no-wrap msgid "if <expression1> then <expression2> [else <expression3>]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1925 msgid "" "Syntax: <_:programlisting-1/> If else is omitted, then if " "the expression1 yields false or 0, " "NULL is returned." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1933 #, no-wrap msgid "" "if(a==5)then(a=a-1)\n" "if b<a then b=a\n" "if c>0 then c=c-1 else c=0\n" "a = ( if b>0 then b else 1 )\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1939 #, no-wrap msgid "if a=5 then a=a-1\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1942 #, no-wrap msgid "if a==5 then a:=a-1\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:1931 msgid "" "Examples: <_:programlisting-1/> Note that = will be " "translated to == if used inside the expression for " "if, so <_:programlisting-2/> will be interpreted as: " "<_:programlisting-3/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:1948 msgid "Loops" msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1951 msgid "While Loops" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1954 #, no-wrap msgid "" "while <expression1> do <expression2>\n" "until <expression1> do <expression2>\n" "do <expression2> while <expression1>\n" "do <expression2> until <expression1>" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1952 msgid "" "Syntax: <_:programlisting-1/> These are similar to other languages. However, " "as in GEL it is simply an expression that must have some return value, these " "constructs will simply return the result of the last iteration or " "NULL if no iteration was done. In the boolean expression, " "= is translated into == just as for " "the if statement." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1965 msgid "For Loops" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1968 #, no-wrap msgid "" "for <identifier> = <from> to <to> do <body>\n" "for <identifier> = <from> to <to> by <increment> do <body>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1972 #, no-wrap msgid "for i = 1 to 20 by 2 do print(i)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1966 msgid "" "Syntax: <_:programlisting-1/> Loop with identifier being set to all values " "from <from> to <to>, " "optionally using an increment other than 1. These are faster, nicer and more " "compact than the normal loops such as above, but less flexible. The " "identifier must be an identifier and can't be a dereference. The value of " "identifier is the last value of identifier, or <from> if body was never evaluated. The variable is guaranteed to be " "initialized after a loop, so you can safely use it. Also the " "<from>, <to> and " "<increment> must be non complex values. The " "<to> is not guaranteed to be hit, but will never be " "overshot, for example the following prints out odd numbers from 1 to 19: " "<_:programlisting-2/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1980 #, no-wrap msgid "for x = 0 to 1 by 0.1 do print(x)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1985 #, no-wrap msgid "for x = 0 to 1 by 1/10 do print(x)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1975 msgid "" "When one of the values is a floating point number, then the final check is " "done to within 2^-20 of the step size. That is, even if we overshoot by " "2^-20 times the \"by\" above, we still execute the last iteration. This way " "<_:programlisting-1/> does the expected even though adding 0.1 ten times " "becomes just slightly more than 1.0 due to the way that floating point " "numbers are stored in base 2 (there is no 0.1, the actual number stored is " "just ever so slightly bigger). This is not perfect but it handles the " "majority of the cases. If you want to avoid dealing with this issue, use " "actual rational numbers for example: <_:programlisting-2/> This check is " "done only from version 1.0.16 onwards, so execution of your code may differ " "on older versions." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:1992 msgid "Foreach Loops" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:1995 #, no-wrap msgid "for <identifier> in <matrix> do <body>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2000 #, no-wrap msgid "for n in [1,2:3,4] do print(n)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2005 #, no-wrap msgid "for n in RowsOf ([1,2:3,4]) do print(n)\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:1993 msgid "" "Syntax: <_:programlisting-1/> For each element in the matrix, going row by " "row from left to right we execute the body with the identifier set to the " "current element. To print numbers 1,2,3 and 4 in this order you could do: " "<_:programlisting-2/> If you wish to run through the rows and columns of a " "matrix, you can use the RowsOf and ColumnsOf functions, which return a " "vector of the rows or columns of the matrix. So, <_:programlisting-3/> will " "print out [1,2] and then [3,4]." msgstr "" #. (itstool) path: sect2/title #: C/genius.xml:2012 msgid "Break and Continue" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2015 #, no-wrap msgid "" "while(<expression1>) do (\n" " if(<expression2>) break\n" " else if(<expression3>) continue;\n" " <expression4>\n" ")\n" msgstr "" #. (itstool) path: sect2/para #: C/genius.xml:2013 msgid "" "You can also use the break and continue commands in loops. The continue continue command " "will restart the current loop at its next iteration, while the " "break command exits the current loop. <_:programlisting-1/" ">" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2026 msgid "Sums and Products" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2029 #, no-wrap msgid "" "sum <identifier> = <from> to <to> do <body>\n" "sum <identifier> = <from> to <to> by <increment> do <body>\n" "sum <identifier> in <matrix> do <body>\n" "prod <identifier> = <from> to <to> do <body>\n" "prod <identifier> = <from> to <to> by <increment> do <body>\n" "prod <identifier> in <matrix> do <body>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2027 msgid "" "Syntax: <_:programlisting-1/> If you substitute for with " "sum or prod, then you will get a sum " "or a product instead of a for loop. Instead of returning " "the last value, these will return the sum or the product of the values " "respectively." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2038 msgid "" "If no body is executed (for example sum i=1 to 0 do ...) then sum returns 0 and prod returns 1 as is the standard convention." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2041 msgid "" "For floating point numbers the same roundoff error protection is done as in " "the for loop. See ." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2048 msgid "Comparison Operators" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2049 msgid "" "The following standard comparison operators are supported in GEL and have " "the obvious meaning: ==, >=, " "<=, !=, <>, <, >. They return " "true or false. The operators " "!= and <> are the same thing and " "mean \"is not equal to\". GEL also supports the operator <=>, which returns -1 if left side is smaller, 0 if both sides are " "equal, 1 if left side is larger." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2068 #, no-wrap msgid "" "if a=b then c\n" "if a==b then c\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2064 msgid "" "Normally = is translated to == if it " "happens to be somewhere where GEL is expecting a condition such as in the if " "condition. For example <_:programlisting-1/> are the same thing in GEL. " "However you should really use == or := " "when you want to compare or assign respectively if you want your code to be " "easy to read and to avoid mistakes." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2077 msgid "" "All the comparison operators (except for the <=> " "operator, which behaves normally), are not strictly binary operators, they " "can in fact be grouped in the normal mathematical way, e.g.: " "(1<x<=y<5) is a legal boolean expression and " "means just what it should, that is (1<x and x≤y and y<5)" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2086 msgid "" "To build up logical expressions use the words not, " "and, or, xor. The " "operators or and and are special " "beasts as they evaluate their arguments one by one, so the usual trick for " "conditional evaluation works here as well. For example, 1 or a=1 will not set a=1 since the first argument was " "true." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2097 msgid "Global Variables and Scope of Variables" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2098 msgid "" "GEL is a dynamically scoped language. We will " "explain what this means below. That is, normal variables and functions are " "dynamically scoped. The exception are parameter variables, which are always global." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2121 #, no-wrap msgid "" "function f() = (a:=5; g());\n" "function g() = print(a);\n" "f();\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2107 msgid "" "Like most programming languages, GEL has different types of variables. " "Normally when a variable is defined in a function, it is visible from that " "function and from all functions that are called (all higher contexts). For " "example, suppose a function f defines a variable " "a and then calls function g. Then " "function g can reference a. But once " "f returns, the variable a goes out " "of scope. For example, the following code will print out 5. The function " "g cannot be called on the top level (outside " "f as a will not be defined). " "<_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2130 #, no-wrap msgid "" "function f() = (a:=5; g());\n" "function g() = print(a);\n" "a:=10;\n" "f();\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2126 msgid "" "If you define a variable inside a function it will override any variables " "defined in calling functions. For example, we modify the above code and " "write: <_:programlisting-1/> This code will still print out 5. But if you " "call g outside of f then you will " "get a printout of 10. Note that setting a to 5 inside " "f does not change the value of a at " "the top (global) level, so if you now check the value of a it will still be 10." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2144 msgid "" "Function arguments are exactly like variables defined inside the function, " "except that they are initialized with the value that was passed to the " "function. Other than this point, they are treated just like all other " "variables defined inside the function." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:2156 #, no-wrap msgid "" "genius> function f(x) = sin(x)^2\n" "= (`(x)=(sin(x)^2))\n" "genius> function f(x) = sin(x)^2\n" "= (`(x)=(sin(x)^2))\n" "genius> function g(x) = ((function sin(x)=x^10);f(x))\n" "= (`(x)=((sin:=(`(x)=(x^10)));f(x)))\n" "genius> g(10)\n" "= 1e20\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2151 msgid "" "Functions are treated exactly like variables. Hence you can locally redefine " "functions. Normally (on the top level) you cannot redefine protected " "variables and functions. But locally you can do this. Consider the following " "session: <_:screen-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2171 #, no-wrap msgid "" "a=6;\n" "function f() = (a:=5);\n" "f();\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2182 #, no-wrap msgid "set(`a,3)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2185 #, no-wrap msgid "set(\"a\",3)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2166 msgid "" "Functions and variables defined at the top level are considered global. They " "are visible from anywhere. As we said the following function f will not change the value of a to 5. " "<_:programlisting-1/> Sometimes, however, it is necessary to set a global " "variable from inside a function. When this behavior is needed, use the set function. " "Passing a string or a quoted identifier to this function sets the variable " "globally (on the top level). For example, to set a to the " "value 3 you could call: <_:programlisting-2/> or: <_:programlisting-3/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2188 msgid "" "The set function always sets the toplevel global. There " "is no way to set a local variable in some function from a subroutine. If " "this is required, must use passing by reference." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2194 msgid "" "See also the SetElement and SetVElement functions." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2199 msgid "" "So to recap in a more technical language: Genius operates with different " "numbered contexts. The top level is the context 0 (zero). Whenever a " "function is entered, the context is raised, and when the function returns " "the context is lowered. A function or a variable is always visible from all " "higher numbered contexts. When a variable was defined in a lower numbered " "context, then setting this variable has the effect of creating a new local " "variable in the current context number and this variable will now be visible " "from all higher numbered contexts." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2210 msgid "" "There are also true local variables that are not seen from anywhere but the " "current context. Also when returning functions by value it may reference " "variables not visible from higher context and this may be a problem. See the " "sections True Local " "Variables and Returning Functions." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2223 msgid "Parameter variables" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2228 #, no-wrap msgid "parameter foo = 1\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2224 msgid "" "As we said before, there exist special variables called parameters that " "exist in all scopes. To declare a parameter called foo " "with the initial value 1, we write <_:programlisting-1/> From then on, " "foo is a strictly global variable. Setting foo inside any function will modify the variable in all contexts, that " "is, functions do not have a private copy of parameters." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2235 msgid "" "When you undefine a parameter using the undefine function, it stops being a " "parameter." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2241 msgid "Some parameters are built-in and modify the behavior of genius." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2247 msgid "Returning" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2248 msgid "" "Normally a function is one or several expressions separated by a semicolon, " "and the value of the last expression is returned. This is fine for simple " "functions, but sometimes you do not want a function to return the last thing " "calculated. You may, for example, want to return from a middle of a " "function. In this case, you can use the return keyword. " "return takes one argument, which is the value to be " "returned." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2256 #, no-wrap msgid "" "function f(x) = (\n" " y=1;\n" " while true do (\n" " if x>50 then return y;\n" " y=y+1;\n" " x=x+1\n" " )\n" ")\n" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2270 msgid "References" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2271 msgid "" "It may be necessary for some functions to return more than one value. This " "may be accomplished by returning a vector of values, but many times it is " "convenient to use passing a reference to a variable. You pass a reference to " "a variable to a function, and the function will set the variable for you " "using a dereference. You do not have to use references only for this " "purpose, but this is their main use." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2286 #, no-wrap msgid "RayleighQuotientIteration (A,x,0.001,100,&v)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2279 msgid "" "When using functions that return values through references in the argument " "list, just pass the variable name with an ampersand. For example the " "following code will compute an eigenvalue of a matrix A " "with initial eigenvector guess x, and store the computed " "eigenvector into the variable named v: " "<_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2289 msgid "" "The details of how references work and the syntax is similar to the C " "language. The operator & references a variable and " "* dereferences a variable. Both can only be applied to an " "identifier, so **a is not a legal expression in GEL." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2298 #, no-wrap msgid "" "a=1;\n" "b=&a;\n" "*b=2;\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2303 #, no-wrap msgid "" "function f(x) = x+1;\n" "t=&f;\n" "*t(3)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2296 msgid "" "References are best explained by an example: <_:programlisting-1/> now " "a contains 2. You can also reference functions: " "<_:programlisting-2/> gives us 4." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2312 msgid "Lvalues" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2318 msgid "a" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2320 msgid "" "Identifier. Here we would be setting the variable of name a." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2329 msgid "" "Dereference of an identifier. This will set whatever variable a points to." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2336 msgid "a@(<region>)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2338 msgid "" "A region of a matrix. Here the region is specified normally as with the " "regular @() operator, and can be a single entry, or an entire region of the " "matrix." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2313 msgid "" "An lvalue is the left hand side of an assignment. In other words, an lvalue " "is what you assign something to. Valid lvalues are: <_:variablelist-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2349 #, no-wrap msgid "" "a:=4\n" "*tmp := 89\n" "a@(1,1) := 5\n" "a@(4:8,3) := [1,2,3,4,5]'\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2347 msgid "" "Examples: <_:programlisting-1/> Note that both := and " "= can be used interchangeably. Except if the assignment " "appears in a condition. It is thus always safer to just use := when you mean assignment, and == when you mean " "comparison." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:2365 msgid "Advanced Programming with GEL" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2368 msgid "Error Handling" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2369 msgid "" "If you detect an error in your function, you can bail out of it. For normal " "errors, such as wrong types of arguments, you can fail to compute the " "function by adding the statement bailout. If something " "went really wrong and you want to completely kill the current computation, " "you can use exception." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2379 #, no-wrap msgid "" "function f(M) = (\n" " if not IsMatrix (M) then (\n" " error (\"M not a matrix!\");\n" " bailout\n" " );\n" " ...\n" ")\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2376 msgid "" "For example if you want to check for arguments in your function. You could " "use the following code. <_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2391 msgid "Toplevel Syntax" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2392 msgid "" "The syntax is slightly different if you enter statements on the top level " "versus when they are inside parentheses or inside functions. On the top " "level, enter acts the same as if you press return on the command line. " "Therefore think of programs as just a sequence of lines as if they were " "entered on the command line. In particular, you do not need to enter the " "separator at the end of the line (unless it is part of several statements " "inside parentheses). When a statement does not end with a separator on the " "top level, the result is printed after being executed." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2405 #, no-wrap msgid "" "function f(x)=x^2\n" "f(3)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2412 #, no-wrap msgid "" "function f(x)=x^2;\n" "f(3)\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2417 #, no-wrap msgid "" "function f(x)=(\n" " y=1;\n" " for j=1 to x do\n" " y = y+j;\n" " y^2\n" ");\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2403 msgid "" "For example, <_:programlisting-1/> will print first the result of setting a " "function (a representation of the function, in this case " "(`(x)=(x^2))) and then the expected 9. To " "avoid this, enter a separator after the function definition. " "<_:programlisting-2/> If you need to put a separator into your function then " "you have to surround with parenthesis. For example: <_:programlisting-3/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2428 #, no-wrap msgid "" "if Something() then\n" " DoSomething()\n" "else\n" " DoSomethingElse()\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2425 msgid "" "The following code will produce an error when entered on the top level of a " "program, while it will work just fine in a function. <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2442 #, no-wrap msgid "" "if Something() then (\n" " DoSomething()\n" ") else (\n" " DoSomethingElse()\n" ")\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2434 msgid "" "The problem is that after Genius Mathematics Tool " "sees the end of line after the second line, it will decide that we have " "whole statement and it will execute it. After the execution is done, " "Genius Mathematics Tool will go on to the next " "line, it will see else, and it will produce a parsing " "error. To fix this, use parentheses. Genius Mathematics Tool will not be satisfied until it has found that all parentheses " "are closed. <_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2452 msgid "Returning Functions" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2465 #, no-wrap msgid "" "function f() = (\n" " k = 5;\n" " `(x) = (x+k)\n" ")\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2472 #, no-wrap msgid "" "g = f();\n" "g(5)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2453 msgid "" "It is possible to return functions as value. This way you can build " "functions that construct special purpose functions according to some " "parameters. The tricky bit is what variables does the function see. The way " "this works in GEL is that when a function returns another function, all " "identifiers referenced in the function body that went out of scope are " "prepended a private dictionary of the returned function. So the function " "will see all variables that were in scope when it was defined. For example, " "we define a function that returns a function that adds 5 to its argument. " "<_:programlisting-1/> Notice that the function adds k to " "x. You could use this as follows. <_:programlisting-2/> " "And g(5) should return 10." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2481 #, no-wrap msgid "" "function f() = (\n" " k := 5;\n" " function r(x) = (x+k);\n" " k := 10;\n" " r\n" ")\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2477 msgid "" "One thing to note is that the value of k that is used is " "the one that's in effect when the f returns. For " "example: <_:programlisting-1/> will return a function that adds 10 to its " "argument rather than 5. This is because the extra dictionary is created only " "when the context in which the function was defined ends, which is when the " "function f returns. This is consistent with how you " "would expect the function r to work inside the function " "f according to the rules of scope of variables in GEL. " "Only those variables are added to the extra dictionary that are in the " "context that just ended and no longer exists. Variables used in the function " "that are in still valid contexts will work as usual, using the current value " "of the variable. The only difference is with global variables and functions. " "All identifiers that referenced global variables at time of the function " "definition are not added to the private dictionary. This is to avoid much " "unnecessary work when returning functions and would rarely be a problem. For " "example, suppose that you delete the \"k=5\" from the function f, and at the top level you define k to be say 5. " "Then when you run f, the function r will not put k into the private dictionary " "because it was global (toplevel) at the time of definition of r." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2523 #, no-wrap msgid "" "function f() = (\n" " k := 5;\n" " function r(x) [k] = (x+k);\n" " k := 10;\n" " r\n" ")\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2512 msgid "" "Sometimes it is better to have more control over how variables are copied " "into the private dictionary. Since version 1.0.7, you can specify which " "variables are copied into the private dictionary by putting extra square " "brackets after the arguments with the list of variables to be copied " "separated by commas. If you do this, then variables are copied into the " "private dictionary at time of the function definition, and the private " "dictionary is not touched afterwards. For example <_:programlisting-1/> will " "return a function that when called will add 5 to its argument. The local " "copy of k was created when the function was defined." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2545 #, no-wrap msgid "" "function f() = (\n" " k := 5;\n" " function r(x) [] = (x+k);\n" " r\n" ");\n" "k := 10;\n" "g = f();\n" "g(10)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2534 msgid "" "When you want the function to not have any private dictionary then put empty " "square brackets after the argument list. Then no private dictionary will be " "created at all. Doing this is good to increase efficiency when a private " "dictionary is not needed or when you want the function to lookup all " "variables as it sees them when called. For example suppose you want the " "function returned from f to see the value of " "k from the toplevel despite there being a local variable " "of the same name during definition. So the code <_:programlisting-1/> will " "return 20 and not 15, which would happen if k with a " "value of 5 was added to the private dictionary." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2561 msgid "True Local Variables" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2565 #, no-wrap msgid "" "k := 10;\n" "function r(x) = (x+k);\n" "function f(g,x) = (\n" " k := 5;\n" " g(x)\n" ");\n" "f(r,1)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2562 msgid "" "When passing functions into other functions, the normal scoping of variables " "might be undesired. For example: <_:programlisting-1/> you probably want the " "function r when passed as g into " "f to see k as 10 rather than 5, so " "that the code returns 11 and not 6. However, as written, the function when " "executed will see the k that is equal to 5. There are two " "ways to solve this. One would be to have r get " "k in a private dictionary using the square bracket " "notation section Returning " "Functions." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2594 #, no-wrap msgid "" "function f(g,x) = (\n" " local g,x,k;\n" " k := 5;\n" " g(x)\n" ");\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2584 msgid "" "But there is another solution. Since version 1.0.7 there are true local " "variables. These are variables that are visible only from the current " "context and not from any called functions. We could define k as a local variable in the function f. To do " "this add a local statement as the first statement in the " "function (it must always be the first statement in the function). You can " "also make any arguments be local variables as well. That is, " "<_:programlisting-1/> Then the code will work as expected and prints out 11. " "Note that the local statement initializes all the " "referenced variables (except for function arguments) to a null." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2611 #, no-wrap msgid "" "function f(g,x) = (\n" " local *;\n" " k := 5;\n" " g(x)\n" ");\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2605 msgid "" "If all variables are to be created as locals you can just pass an asterisk " "instead of a list of variables. In this case the variables will not be " "initialized until they are actually set. So the following definition of " "f will also work: <_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2618 msgid "" "It is good practice that all functions that take other functions as " "arguments use local variables. This way the passed function does not see " "implementation details and get confused." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2626 msgid "GEL Startup Procedure" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2627 msgid "" "First the program looks for the installed library file (the compiled version " "lib.cgel) in the installed directory, then it looks " "into the current directory, and then it tries to load an uncompiled file " "called ~/.geniusinit." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2631 msgid "" "If you ever change the library in its installed place, you’ll have to first " "compile it with genius --compile loader.gel > lib.cgel" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2638 msgid "Loading Programs" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2641 #, no-wrap msgid "" "load program1.gel program2.gel\n" "load \"Weird File Name With SPACES.gel\"\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2645 #, no-wrap msgid "" "cd directory_with_gel_programs\n" "ls *.gel\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2639 msgid "" "Sometimes you have a larger program you wrote into a file and want to read " "that file into Genius Mathematics Tool. In these " "situations, you have two options. You can keep the functions you use most " "inside the ~/.geniusinit file. Or if you want to load " "up a file in a middle of a session (or from within another file), you can " "type load <list of filenames> at the prompt. This " "has to be done on the top level and not inside any function or whatnot, and " "it cannot be part of any expression. It also has a slightly different syntax " "than the rest of genius, more similar to a shell. You can enter the file in " "quotes. If you use the '' quotes, you will get exactly the string that you " "typed, if you use the \"\" quotes, special characters will be unescaped as " "they are for strings. Example: <_:programlisting-1/> There are also " "cd, pwd and ls " "commands built in. cd will take one argument, " "ls will take an argument that is like the glob in the " "UNIX shell (i.e., you can use wildcards). pwd takes no " "arguments. For example: <_:programlisting-2/>" msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:2655 msgid "Matrices in GEL" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:2657 msgid "" "Genius has support for vectors and matrices and possesses a sizable library " "of matrix manipulation and linear algebra functions." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2663 msgid "Entering Matrices" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2672 #, no-wrap msgid "[1,2,3;4,5,6;7,8,9]\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2675 #, no-wrap msgid "" "[1, 2, 3\n" " 4, 5, 6\n" " 7, 8, 9]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2664 msgid "" "To enter matrices, you can use one of the following two syntaxes. You can " "either enter the matrix on one line, separating values by commas and rows by " "semicolons. Or you can enter each row on one line, separating values by " "commas. You can also just combine the two methods. So to enter a 3x3 matrix " "of numbers 1-9 you could do <_:programlisting-1/> or <_:programlisting-2/> " "Do not use both ';' and return at once on the same line though." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2685 #, no-wrap msgid "" "a = [ 1, 2, 3\n" " 4, 5, 6\n" " 7, 8, 9]\n" "b = [ a, 10\n" " 11, 12]\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2692 #, no-wrap msgid "" "[1, 2, 3, 10\n" " 4, 5, 6, 10\n" " 7, 8, 9, 10\n" " 11, 11, 11, 12]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2682 msgid "" "You can also use the matrix expansion functionality to enter matrices. For " "example you can do: <_:programlisting-1/> and you should get " "<_:programlisting-2/> similarly you can build matrices out of vectors and " "other stuff like that." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2702 #, no-wrap msgid "" "[1, 2, 3\n" " 4, 5\n" " 6]\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2707 #, no-wrap msgid "" "\n" "[1, 2, 3\n" " 4, 5, 0\n" " 6, 0, 0]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2700 msgid "" "Another thing is that non-specified spots are initialized to 0, so " "<_:programlisting-1/> will end up being <_:programlisting-2/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2714 msgid "" "When matrices are evaluated, they are evaluated and traversed row-wise. This " "is just like the M@(j) operator, which traverses the " "matrix row-wise." msgstr "" #. (itstool) path: note/para #: C/genius.xml:2720 msgid "" "Be careful about using returns for expressions inside the [ ] brackets, as they have a slightly different meaning there. You will " "start a new row." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2730 msgid "Conjugate Transpose and Transpose Operator" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2738 #, no-wrap msgid "[1,2,3]*[4,5,6]'\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2743 #, no-wrap msgid "[1,2,3]*[4,5,6i].'\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2731 msgid "" "You can conjugate transpose a matrix by using the ' " "operator. That is the entry in the ith column and the " "jth row will be the complex conjugate of the entry in the " "jth column and the ith row of the " "original matrix. For example: <_:programlisting-1/> We transpose the second " "vector to make matrix multiplication possible. If you just want to transpose " "a matrix without conjugating it, you would use the .' " "operator. For example: <_:programlisting-2/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2746 msgid "" "Note that normal transpose, that is the .' operator, is " "much faster and will not create a new copy of the matrix in memory. The " "conjugate transpose does create a new copy unfortunately. It is recommended " "to always use the .' operator when working with real " "matrices and vectors." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2756 C/genius.xml:5945 msgid "Linear Algebra" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2757 msgid "" "Genius implements many useful linear algebra and matrix manipulation " "routines. See the Linear Algebra and Matrix Manipulation sections of the GEL function listing." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2764 msgid "" "The linear algebra routines implemented in GEL do not currently come from a " "well tested numerical package, and thus should not be used for critical " "numerical computation. On the other hand, Genius implements very well many " "linear algebra operations with rational and integer coefficients. These are " "inherently exact and in fact will give you much better results than common " "double precision routines for linear algebra." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2772 msgid "" "For example, it is pointless to compute the rank and nullspace of a floating " "point matrix since for all practical purposes, we need to consider the " "matrix as having some slight errors. You are likely to get a different " "result than you expect. The problem is that under a small perturbation every " "matrix is of full rank and invertible. If the matrix however is of rational " "numbers, then the rank and nullspace are always exact." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2780 msgid "" "In general when Genius computes the basis of a certain vectorspace (for " "example with the NullSpace) it will give the basis as " "a matrix, in which the columns are the vectors of the basis. That is, when " "Genius talks of a linear subspace it means a matrix whose column space is " "the given linear subspace." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2787 msgid "" "It should be noted that Genius can remember certain properties of a matrix. " "For example, it will remember that a matrix is in row reduced form. If many " "calls are made to functions that internally use row reduced form of the " "matrix, we can just row reduce the matrix beforehand once. Successive calls " "to rref will " "be very fast." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:2800 msgid "Polynomials in GEL" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:2802 msgid "" "Currently Genius can handle polynomials of one variable written out as " "vectors, and do some basic operations with these. It is planned to expand " "this support further." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2809 msgid "Using Polynomials" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2815 #, no-wrap msgid "[1,2,3]\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2818 #, no-wrap msgid "1 + 2*x + 3*x^2\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2810 msgid "" "Currently polynomials in one variable are just horizontal vectors with value " "only nodes. The power of the term is the position in the vector, with the " "first position being 0. So, <_:programlisting-1/> translates to a polynomial " "of <_:programlisting-2/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2830 #, no-wrap msgid "PolyToString([1,2,3],\"y\")\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2833 #, no-wrap msgid "3*y^2 + 2*y + 1\n" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2840 #, no-wrap msgid "" "f = PolyToFunction([0,1,1])\n" "f(2)\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2821 msgid "" "You can add, subtract and multiply polynomials using the AddPoly, SubtractPoly, and MultiplyPoly functions respectively. You can print a polynomial using the PolyToString function. For example, <_:programlisting-1/> gives <_:programlisting-2/" "> You can also get a function representation of the polynomial so that you " "can evaluate it. This is done by using PolyToFunction, which returns " "an anonymous function. <_:programlisting-3/>" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2844 msgid "" "It is also possible to find roots of polynomials of degrees 1 through 4 by " "using the function PolynomialRoots, which calls " "the appropriate formula function. Higher degree polynomials must be " "converted to functions and solved numerically using a function such as FindRootBisection, FindRootFalsePosition, " "FindRootMullersMethod, " "or FindRootSecant." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2856 msgid "" "See in the function " "list for the rest of functions acting on polynomials." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:2866 msgid "Set Theory in GEL" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:2868 msgid "" "Genius has some basic set theoretic functionality built in. Currently a set " "is just a vector (or a matrix). Every distinct object is treated as a " "different element." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2874 msgid "Using Sets" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2875 msgid "" "Just like vectors, objects in sets can include numbers, strings, " "null, matrices and vectors. It is planned in the future " "to have a dedicated type for sets, rather than using vectors. Note that " "floating point numbers are distinct from integers, even if they appear the " "same. That is, Genius will treat 0 and 0.0 as two distinct elements. The null is treated " "as an empty set." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:2887 #, no-wrap msgid "" "genius> MakeSet([1,2,2,3])\n" "= [1, 2, 3]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2883 msgid "" "To build a set out of a vector, use the MakeSet function. Currently, it will " "just return a new vector where every element is unique. <_:screen-1/>" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:2898 #, no-wrap msgid "" "genius> Union([1,2,3], [1,2,4])\n" "= [1, 2, 4, 3]\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2892 msgid "" "Similarly there are functions Union, Intersection, SetMinus, which are rather " "self explanatory. For example: <_:screen-1/> Note that no order is " "guaranteed for the return values. If you wish to sort the vector you should " "use the SortVector function." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:2911 #, no-wrap msgid "" "genius> IsIn (1, [0,1,2])\n" "= true\n" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:2906 msgid "" "For testing membership, there are functions IsIn and IsSubset, which return a boolean " "value. For example: <_:screen-1/> The input IsIn(x,X) " "is equivalent to IsSubset([x],X). Note that since the " "empty set is a subset of every set, IsSubset(null,X) " "is always true." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:2925 msgid "List of GEL functions" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:2931 #, no-wrap msgid "help FunctionName\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:2929 msgid "" "To get help on a specific function from the console type: " "<_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2936 msgid "Commands" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2939 msgid "help" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2941 #, no-wrap msgid "help" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2942 #, no-wrap msgid "help FunctionName" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2943 msgid "Print help (or help on a function/command)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2948 msgid "load" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2950 #, no-wrap msgid "load \"file.gel\"" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2951 msgid "" "Load a file into the interpreter. The file will execute as if it were typed " "onto the command line." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2957 msgid "cd" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2959 #, no-wrap msgid "cd /directory/name" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2960 msgid "Change working directory to /directory/name." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2965 msgid "pwd" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2967 #, no-wrap msgid "pwd" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2968 msgid "Print the current working directory." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2973 msgid "ls" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2975 #, no-wrap msgid "ls" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2976 msgid "List files in the current directory." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2981 msgid "plugin" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2983 #, no-wrap msgid "plugin plugin_name" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2984 msgid "" "Load a plugin. Plugin of that name must be installed on the system in the " "proper directory." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:2992 msgid "Basic" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:2995 msgid "AskButtons" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2997 #, no-wrap msgid "AskButtons (query)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:2998 #, no-wrap msgid "AskButtons (query, button1, ...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:2999 msgid "" "Asks a question and presents a list of buttons to the user (or a menu of " "options in text mode). Returns the 1-based index of the button pressed. That " "is, returns 1 if the first button was pressed, 2 if the second button was " "pressed, and so on. If the user closes the window (or simply hits enter in " "text mode), then null is returned. The execution of the " "program is blocked until the user responds." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3005 C/genius.xml:3623 C/genius.xml:3753 C/genius.xml:3801 #: C/genius.xml:3830 C/genius.xml:8123 C/genius.xml:8366 msgid "Version 1.0.10 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3010 msgid "AskString" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3012 #, no-wrap msgid "AskString (query)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3013 #, no-wrap msgid "AskString (query, default)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3014 msgid "" "Asks a question and lets the user enter a string, which it then returns. If " "the user cancels or closes the window, then null is " "returned. The execution of the program is blocked until the user responds. " "If default is given, then it is pre-typed in for the user " "to just press enter on (version 1.0.6 onwards)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3022 msgid "Compose" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3024 #, no-wrap msgid "Compose (f,g)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3025 msgid "" "Compose two functions and return a function that is the composition of " "f and g." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3030 msgid "ComposePower" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3032 #, no-wrap msgid "ComposePower (f,n,x)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:3036 #, no-wrap msgid "" "genius> function f(x) = x^2 ;\n" "genius> ComposePower (f,3,7)\n" "= 5764801\n" "genius> f(f(f(7)))\n" "= 5764801\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3033 msgid "" "Compose and execute a function with itself n times, " "passing x as argument. Returning x if " "n equals 0. Example: <_:screen-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3047 msgid "Evaluate" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3049 #, no-wrap msgid "Evaluate (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3050 msgid "Parses and evaluates a string." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3056 msgid "GetCurrentModulo" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3058 #, no-wrap msgid "GetCurrentModulo" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3059 msgid "" "Get current modulo from the context outside the function. That is, if " "outside of the function was executed in modulo (using mod) then this returns what this modulo was. Normally the body of the " "function called is not executed in modular arithmetic, and this builtin " "function makes it possible to make GEL functions aware of modular arithmetic." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3067 msgid "Identity" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3069 #, no-wrap msgid "Identity (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3070 msgid "" "Identity function, returns its argument. It is equivalent to " "function Identity(x)=x." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3075 msgid "IntegerFromBoolean" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3077 #, no-wrap msgid "IntegerFromBoolean (bval)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3078 msgid "" "Make integer (0 for false or 1 for true) from a boolean value. bval can also be a " "number in which case a non-zero value will be interpreted as true and zero will be interpreted as false." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3089 msgid "IsBoolean" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3091 #, no-wrap msgid "IsBoolean (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3092 msgid "Check if argument is a boolean (and not a number)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3097 msgid "IsDefined" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3099 #, no-wrap msgid "IsDefined (id)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3100 msgid "" "Check if an id is defined. You should pass a string or and identifier. If " "you pass a matrix, each entry will be evaluated separately and the matrix " "should contain strings or identifiers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3108 msgid "IsFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3110 #, no-wrap msgid "IsFunction (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3111 msgid "Check if argument is a function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3116 msgid "" "IsFunctionOrIdentifier" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3118 #, no-wrap msgid "IsFunctionOrIdentifier (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3119 msgid "Check if argument is a function or an identifier." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3124 msgid "IsFunctionRef" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3126 #, no-wrap msgid "IsFunctionRef (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3127 msgid "" "Check if argument is a function reference. This includes variable references." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3133 msgid "IsMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3135 #, no-wrap msgid "IsMatrix (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3136 msgid "" "Check if argument is a matrix. Even though null is " "sometimes considered an empty matrix, the function IsMatrix does not consider null a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3143 msgid "IsNull" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3145 #, no-wrap msgid "IsNull (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3146 msgid "Check if argument is a null." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3151 msgid "IsString" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3153 #, no-wrap msgid "IsString (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3154 msgid "Check if argument is a text string." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3159 msgid "IsValue" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3161 #, no-wrap msgid "IsValue (arg)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3162 msgid "Check if argument is a number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3167 msgid "Parse" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3169 #, no-wrap msgid "Parse (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3170 msgid "" "Parses but does not evaluate a string. Note that certain pre-computation is " "done during the parsing stage." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3176 msgid "SetFunctionFlags" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3178 #, no-wrap msgid "SetFunctionFlags (id,flags...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3179 msgid "" "Set flags for a function, currently \"PropagateMod\" and " "\"NoModuloArguments\". If \"PropagateMod\" is set, then the body of the function is evaluated in modular " "arithmetic when the function is called inside a block that was evaluated " "using modular arithmetic (using mod). If " "\"NoModuloArguments\", then the arguments of the function " "are never evaluated using modular arithmetic." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3188 msgid "SetHelp" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3190 #, no-wrap msgid "SetHelp (id,category,desc)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3191 msgid "Set the category and help description line for a function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3196 msgid "SetHelpAlias" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3198 #, no-wrap msgid "SetHelpAlias (id,alias)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3199 msgid "Sets up a help alias." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3204 msgid "chdir" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3206 #, no-wrap msgid "chdir (dir)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3207 msgid "Changes current directory, same as the cd." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3212 msgid "CurrentTime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3214 #, no-wrap msgid "CurrentTime" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3215 msgid "" "Returns the current UNIX time with microsecond precision as a floating point " "number. That is, returns the number of seconds since January 1st 1970." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3216 C/genius.xml:8680 C/genius.xml:8689 C/genius.xml:8698 msgid "Version 1.0.15 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3221 msgid "display" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3223 #, no-wrap msgid "display (str,expr)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3224 msgid "Display a string and an expression with a colon to separate them." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3229 msgid "DisplayVariables" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3231 #, no-wrap msgid "DisplayVariables (var1,var2,...)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3234 #, no-wrap msgid "" "DisplayVariables(`x,`y,`z)\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3232 msgid "" "Display set of variables. The variables can be given as strings or " "identifiers. For example: <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3239 #, no-wrap msgid "" "DisplayVariables()\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3237 msgid "" "If called without arguments (must supply empty argument list) as " "<_:programlisting-1/> then all variables are printed including a stacktrace " "similar to Show user variables in the graphical version." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3244 C/genius.xml:3312 C/genius.xml:5768 C/genius.xml:5777 #: C/genius.xml:6422 C/genius.xml:7832 C/genius.xml:8196 C/genius.xml:8222 #: C/genius.xml:9201 C/genius.xml:9215 msgid "Version 1.0.18 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3249 msgid "error" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3251 #, no-wrap msgid "error (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3252 msgid "Prints a string to the error stream (onto the console)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3257 msgid "exit" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3259 #, no-wrap msgid "exit" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3260 msgid "Aliases: quit" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3261 msgid "Exits the program." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3266 msgid "false" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3268 #, no-wrap msgid "false" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3269 msgid "Aliases: False FALSE" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3270 msgid "The false boolean value." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3275 msgid "manual" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3277 #, no-wrap msgid "manual" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3278 msgid "Displays the user manual." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3283 msgid "print" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3285 #, no-wrap msgid "print (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3286 msgid "" "Prints an expression and then print a newline. The argument str can be any expression. It is made into a string before being " "printed." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3292 msgid "printn" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3294 #, no-wrap msgid "printn (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3295 msgid "" "Prints an expression without a trailing newline. The argument str can be any expression. It is made into a string before being " "printed." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3301 msgid "PrintTable" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3303 #, no-wrap msgid "PrintTable (f,v)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3307 #, no-wrap msgid "" "PrintTable (f,[0:10])\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3304 msgid "" "Print a table of values for a function. The values are in the vector " "v. You can use the vector building notation as follows: " "<_:programlisting-1/> If v is a positive integer, then " "the table of integers from 1 up to and including v will be used." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3317 msgid "protect" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3319 #, no-wrap msgid "protect (id)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3320 msgid "" "Protect a variable from being modified. This is used on the internal GEL " "functions to avoid them being accidentally overridden." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3326 msgid "ProtectAll" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3328 #, no-wrap msgid "ProtectAll ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3329 msgid "" "Protect all currently defined variables, parameters and functions from being " "modified. This is used on the internal GEL functions to avoid them being " "accidentally overridden. Normally Genius Mathematics Tool considers unprotected variables as user defined." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3333 C/genius.xml:3434 C/genius.xml:3452 C/genius.xml:7284 #: C/genius.xml:7419 C/genius.xml:7439 C/genius.xml:7464 C/genius.xml:7485 #: C/genius.xml:7507 C/genius.xml:7528 C/genius.xml:7580 C/genius.xml:7613 msgid "Version 1.0.7 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3338 msgid "set" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3340 #, no-wrap msgid "set (id,val)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3344 #, no-wrap msgid "" "set(`x,1)\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3341 msgid "" "Set a global variable. The id can be either a string or a " "quoted identifier. For example: <_:programlisting-1/> will set the global " "variable x to the value 1." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3348 C/genius.xml:3367 C/genius.xml:3387 msgid "" "The function returns the val, to be usable in chaining." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3354 msgid "SetElement" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3356 #, no-wrap msgid "SetElement (id,row,col,val)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3361 #, no-wrap msgid "" "SetElement(`x,2,3,1)\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3357 msgid "" "Set an element of a global variable which is a matrix. The id can be either a string or a quoted identifier. For example: " "<_:programlisting-1/> will set the second row third column element of the " "global variable x to the value 1. If no global variable " "of the name exists, or if it is set to something that's not a matrix, a new " "zero matrix of appropriate size will be created." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3365 msgid "" "The row and col can also be ranges, " "and the semantics are the same as for regular setting of the elements with " "an equals sign." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3369 C/genius.xml:3389 msgid "Available from 1.0.18 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3374 msgid "SetVElement" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3376 #, no-wrap msgid "SetElement (id,elt,val)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3381 #, no-wrap msgid "" "SetElement(`x,2,1)\n" "\t " msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3377 msgid "" "Set an element of a global variable which is a vector. The id can be either a string or a quoted identifier. For example: " "<_:programlisting-1/> will set the second element of the global vector " "variable x to the value 1. If no global variable of the " "name exists, or if it is set to something that's not a vector (matrix), a " "new zero row vector of appropriate size will be created." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3385 msgid "" "The elt can also be a range, and the semantics are the " "same as for regular setting of the elements with an equals sign." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3394 msgid "string" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3396 #, no-wrap msgid "string (s)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3397 msgid "Make a string. This will make a string out of any argument." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3402 msgid "true" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3404 #, no-wrap msgid "true" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3405 msgid "Aliases: True TRUE" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3406 msgid "The true boolean value." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3411 msgid "undefine" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3413 #, no-wrap msgid "undefine (id)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3414 msgid "Alias: Undefine" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3415 msgid "" "Undefine a variable. This includes locals and globals, every value on all " "context levels is wiped. This function should really not be used on local " "variables. A vector of identifiers can also be passed to undefine several " "variables." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3424 msgid "UndefineAll" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3426 #, no-wrap msgid "UndefineAll ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3427 msgid "" "Undefine all unprotected global variables (including functions and " "parameters). Normally Genius Mathematics Tool " "considers protected variables as system defined functions and variables. " "Note that UndefineAll only removes the global " "definition of symbols not local ones, so that it may be run from inside " "other functions safely." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3439 msgid "unprotect" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3441 #, no-wrap msgid "unprotect (id)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3442 msgid "Unprotect a variable from being modified." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3447 msgid "UserVariables" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3449 #, no-wrap msgid "UserVariables ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3450 msgid "" "Return a vector of identifiers of user defined (unprotected) global " "variables." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3457 msgid "wait" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3459 #, no-wrap msgid "wait (secs)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3460 msgid "" "Waits a specified number of seconds. secs must be non-" "negative. Zero is accepted and nothing happens in this case, except possibly " "user interface events are processed." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3463 msgid "" "Since version 1.0.18, secs can be a noninteger number, so " "wait(0.1) will wait for one tenth of a second." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3469 msgid "version" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3471 #, no-wrap msgid "version" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3472 msgid "" "Returns the version of Genius as a horizontal 3-vector with major version " "first, then minor version and finally the patch level." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3478 msgid "warranty" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3480 #, no-wrap msgid "warranty" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3481 msgid "Gives the warranty information." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:3489 msgid "Parameters" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3492 msgid "ChopTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3494 #, no-wrap msgid "ChopTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3495 msgid "Tolerance of the Chop function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3500 msgid "" "ContinuousNumberOfTries" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3502 #, no-wrap msgid "ContinuousNumberOfTries = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3503 msgid "How many iterations to try to find the limit for continuity and limits." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3508 msgid "ContinuousSFS" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3510 #, no-wrap msgid "ContinuousSFS = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3511 msgid "" "How many successive steps to be within tolerance for calculation of " "continuity." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3516 msgid "ContinuousTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3518 #, no-wrap msgid "ContinuousTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3519 msgid "Tolerance for continuity of functions and for calculating the limit." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3524 msgid "" "DerivativeNumberOfTries" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3526 #, no-wrap msgid "DerivativeNumberOfTries = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3527 msgid "How many iterations to try to find the limit for derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3532 msgid "DerivativeSFS" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3534 #, no-wrap msgid "DerivativeSFS = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3535 msgid "" "How many successive steps to be within tolerance for calculation of " "derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3540 msgid "DerivativeTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3542 #, no-wrap msgid "DerivativeTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3543 msgid "Tolerance for calculating the derivatives of functions." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3548 msgid "" "ErrorFunctionTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3550 #, no-wrap msgid "ErrorFunctionTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3551 msgid "" "Tolerance of the ErrorFunction." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3556 msgid "FloatPrecision" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3558 #, no-wrap msgid "FloatPrecision = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3559 msgid "Floating point precision." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3564 msgid "FullExpressions" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3566 #, no-wrap msgid "FullExpressions = boolean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3567 msgid "Print full expressions, even if more than a line." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3572 msgid "" "GaussDistributionTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3574 #, no-wrap msgid "GaussDistributionTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3575 msgid "" "Tolerance of the GaussDistribution function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3580 msgid "IntegerOutputBase" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3582 #, no-wrap msgid "IntegerOutputBase = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3583 msgid "Integer output base." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3588 msgid "" "IsPrimeMillerRabinReps" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3590 #, no-wrap msgid "IsPrimeMillerRabinReps = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3591 msgid "" "Number of extra Miller-Rabin tests to run on a number before declaring it a " "prime in IsPrime." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3596 msgid "LinePlotDrawLegends" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3598 #, no-wrap msgid "LinePlotDrawLegends = true" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3599 msgid "" "Tells genius to draw the legends for line plotting functions such as LinePlot." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3606 msgid "" "LinePlotDrawAxisLabels" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3608 #, no-wrap msgid "LinePlotDrawAxisLabels = true" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3609 msgid "" "Tells genius to draw the axis labels for line plotting functions such as LinePlot." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3612 C/genius.xml:3788 C/genius.xml:7681 C/genius.xml:7694 #: C/genius.xml:7707 C/genius.xml:7720 C/genius.xml:7733 C/genius.xml:7746 #: C/genius.xml:8008 C/genius.xml:8897 C/genius.xml:9376 C/genius.xml:9413 msgid "Version 1.0.16 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3617 msgid "" "LinePlotVariableNames" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3619 #, no-wrap msgid "LinePlotVariableNames = [\"x\",\"y\",\"z\",\"t\"]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3620 msgid "" "Tells genius which variable names are used as default names for line plotting functions " "such as LinePlot and friends." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3628 msgid "LinePlotWindow" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3630 #, no-wrap msgid "LinePlotWindow = [x1,x2,y1,y2]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3631 msgid "" "Sets the limits for line " "plotting functions such as LinePlot." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3639 msgid "MaxDigits" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3641 #, no-wrap msgid "MaxDigits = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3642 msgid "Maximum digits to display." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3647 msgid "MaxErrors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3649 #, no-wrap msgid "MaxErrors = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3650 msgid "Maximum errors to display." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3655 msgid "MixedFractions" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3657 #, no-wrap msgid "MixedFractions = boolean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3658 msgid "If true, mixed fractions are printed." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3663 msgid "" "NumericalIntegralFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3665 #, no-wrap msgid "NumericalIntegralFunction = function" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3666 msgid "" "The function used for numerical integration in NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3671 msgid "" "NumericalIntegralSteps" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3673 #, no-wrap msgid "NumericalIntegralSteps = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3674 msgid "" "Steps to perform in NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3679 msgid "OutputChopExponent" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3681 #, no-wrap msgid "OutputChopExponent = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3682 msgid "" "When another number in the object being printed (a matrix or a value) is " "greater than 10-OutputChopWhenExponent, and the " "number being printed is less than 10-OutputChopExponent, then display 0.0 instead of " "the number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3689 msgid "" "Output is never chopped if OutputChopExponent is zero. " "It must be a non-negative integer." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3693 msgid "" "If you want output always chopped according to OutputChopExponent, then set OutputChopWhenExponent, to " "something greater than or equal to OutputChopExponent." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3704 msgid "" "OutputChopWhenExponent" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3706 #, no-wrap msgid "OutputChopWhenExponent = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3707 msgid "" "When to chop output. See OutputChopExponent." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3714 msgid "OutputStyle" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3716 #, no-wrap msgid "OutputStyle = string" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3717 msgid "" "Output style, this can be normal, latex, mathml or troff." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:3724 #, no-wrap msgid "OutputStyle = \"latex\"\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3720 msgid "" "This affects mostly how matrices and fractions are printed out and is useful " "for pasting into documents. For example you can set this to the latex by: " "<_:programlisting-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3731 msgid "ResultsAsFloats" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3733 #, no-wrap msgid "ResultsAsFloats = boolean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3734 msgid "Convert all results to floats before printing." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3739 msgid "ScientificNotation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3741 #, no-wrap msgid "ScientificNotation = boolean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3742 msgid "Use scientific notation." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3747 msgid "SlopefieldTicks" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3749 #, no-wrap msgid "SlopefieldTicks = [vertical,horizontal]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3750 msgid "" "Sets the number of vertical and horizontal ticks in a slopefield plot. (See " "SlopefieldPlot)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3758 msgid "" "SumProductNumberOfTries" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3760 #, no-wrap msgid "SumProductNumberOfTries = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3761 msgid "" "How many iterations to try for InfiniteSum and InfiniteProduct." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3766 msgid "SumProductSFS" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3768 #, no-wrap msgid "SumProductSFS = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3769 msgid "" "How many successive steps to be within tolerance for InfiniteSum and InfiniteProduct." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3774 msgid "SumProductTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3776 #, no-wrap msgid "SumProductTolerance = number" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3777 msgid "" "Tolerance for InfiniteSum and InfiniteProduct." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3782 msgid "" "SurfacePlotDrawLegends" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3784 #, no-wrap msgid "SurfacePlotDrawLegends = true" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3785 msgid "" "Tells genius to draw the legends for surface plotting functions such as SurfacePlot." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3793 msgid "" "SurfacePlotVariableNames" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3795 #, no-wrap msgid "SurfacePlotVariableNames = [\"x\",\"y\",\"z\"]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3796 msgid "" "Tells genius which variable names are used as default names for surface plotting functions using SurfacePlot. Note that the " "z does not refer to the dependent (vertical) axis, but to " "the independent complex variable z=x+iy." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3806 msgid "SurfacePlotWindow" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3808 #, no-wrap msgid "SurfacePlotWindow = [x1,x2,y1,y2,z1,z2]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3809 msgid "" "Sets the limits for surface plotting (See SurfacePlot)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3814 msgid "" "VectorfieldNormalized" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3816 #, no-wrap msgid "VectorfieldNormalized = true" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3817 msgid "" "Should the vectorfield plotting have normalized arrow length. If true, " "vector fields will only show direction and not magnitude. (See VectorfieldPlot)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3824 msgid "VectorfieldTicks" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3826 #, no-wrap msgid "VectorfieldTicks = [vertical,horizontal]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3827 msgid "" "Sets the number of vertical and horizontal ticks in a vectorfield plot. (See " "VectorfieldPlot)." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:3838 msgid "Constants" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3841 msgid "CatalanConstant" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3843 #, no-wrap msgid "CatalanConstant" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3844 msgid "" "Catalan's Constant, approximately 0.915... It is defined to be the series " "where terms are (-1^k)/((2*k+1)^2), where k ranges from 0 to infinity." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3847 msgid "" "See Wikipedia or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3856 msgid "EulerConstant" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3858 #, no-wrap msgid "EulerConstant" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3859 msgid "Aliases: gamma" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3860 msgid "Euler's constant gamma. Sometimes called the Euler-Mascheroni constant." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3864 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3874 msgid "GoldenRatio" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3876 #, no-wrap msgid "GoldenRatio" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3877 msgid "The Golden Ratio." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3878 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3888 msgid "Gravity" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3890 #, no-wrap msgid "Gravity" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3891 msgid "" "Free fall acceleration at sea level in meters per second squared. This is " "the standard gravity constant 9.80665. The gravity in your particular neck " "of the woods might be different due to different altitude and the fact that " "the earth is not perfectly round and uniform." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3894 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3902 msgid "e" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3904 #, no-wrap msgid "e" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3905 msgid "" "The base of the natural logarithm. e^x is the " "exponential function exp. It is approximately 2.71828182846... This number is " "sometimes called Euler's number, although there are several numbers that are " "also called Euler's. An example is the gamma constant: EulerConstant." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3912 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3922 msgid "pi" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3924 #, no-wrap msgid "pi" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3925 msgid "" "The number pi, that is the ratio of a circle's circumference to its " "diameter. This is approximately 3.14159265359..." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3929 msgid "" "See Wikipedia or " "Planetmath or Mathworld for more " "information." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:3942 msgid "Numeric" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3945 msgid "AbsoluteValue" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3947 #, no-wrap msgid "AbsoluteValue (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3948 msgid "Aliases: abs" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3949 msgid "" "Absolute value of a number and if x is a complex value " "the modulus of x. I.e. this the distance of x to the origin. This is equivalent to |x|." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3955 msgid "" "See Wikipedia, Planetmath " "(absolute value), Planetmath (modulus), Mathworld (absolute value) or Mathworld (complex modulus) for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3968 msgid "Chop" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3970 #, no-wrap msgid "Chop (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3971 msgid "Replace very small number with zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3976 msgid "ComplexConjugate" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3978 #, no-wrap msgid "ComplexConjugate (z)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3979 msgid "Aliases: conj Conj" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3980 msgid "" "Calculates the complex conjugate of the complex number z. " "If z is a vector or matrix, all its elements are " "conjugated." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3982 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:3990 msgid "Denominator" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:3992 #, no-wrap msgid "Denominator (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3993 msgid "Get the denominator of a rational number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:3994 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4002 msgid "FractionalPart" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4004 #, no-wrap msgid "FractionalPart (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4005 msgid "Return the fractional part of a number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4006 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4014 msgid "Im" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4016 #, no-wrap msgid "Im (z)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4017 msgid "Aliases: ImaginaryPart" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4018 msgid "" "Get the imaginary part of a complex number. For example Re(3+4i) yields 4." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4019 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4027 msgid "IntegerQuotient" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4029 #, no-wrap msgid "IntegerQuotient (m,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4030 msgid "Division without remainder." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4035 msgid "IsComplex" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4037 #, no-wrap msgid "IsComplex (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4038 msgid "" "Check if argument is a complex (non-real) number. Do note that we really " "mean nonreal number. That is, IsComplex(3) yields " "false, while IsComplex(3-1i) yields true." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4045 msgid "IsComplexRational" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4047 #, no-wrap msgid "IsComplexRational (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4048 msgid "" "Check if argument is a possibly complex rational number. That is, if both " "real and imaginary parts are given as rational numbers. Of course rational " "simply means \"not stored as a floating point number.\"" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4054 msgid "IsFloat" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4056 #, no-wrap msgid "IsFloat (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4057 msgid "Check if argument is a real floating point number (non-complex)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4062 msgid "IsGaussInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4064 #, no-wrap msgid "IsGaussInteger (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4065 msgid "Aliases: IsComplexInteger" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4066 msgid "" "Check if argument is a possibly complex integer. That is a complex integer " "is a number of the form n+1i*m where n and m are integers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4073 msgid "IsInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4075 #, no-wrap msgid "IsInteger (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4076 msgid "Check if argument is an integer (non-complex)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4081 msgid "IsNonNegativeInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4083 #, no-wrap msgid "IsNonNegativeInteger (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4084 msgid "" "Check if argument is a non-negative real integer. That is, either a positive " "integer or zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4089 msgid "IsPositiveInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4091 #, no-wrap msgid "IsPositiveInteger (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4092 msgid "Aliases: IsNaturalNumber" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4093 msgid "" "Check if argument is a positive real integer. Note that we accept the " "convention that 0 is not a natural number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4099 msgid "IsRational" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4101 #, no-wrap msgid "IsRational (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4102 msgid "" "Check if argument is a rational number (non-complex). Of course rational " "simply means \"not stored as a floating point number.\"" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4107 msgid "IsReal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4109 #, no-wrap msgid "IsReal (num)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4110 msgid "Check if argument is a real number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4115 msgid "Numerator" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4117 #, no-wrap msgid "Numerator (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4118 msgid "Get the numerator of a rational number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4119 msgid "" "See Wikipedia " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4127 msgid "Re" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4129 #, no-wrap msgid "Re (z)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4130 msgid "Aliases: RealPart" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4131 msgid "" "Get the real part of a complex number. For example Re(3+4i) yields 3." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4132 msgid "" "See Wikipedia " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4140 msgid "Sign" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4142 #, no-wrap msgid "Sign (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4143 msgid "Aliases: sign" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4144 msgid "" "Return the sign of a number. That is returns -1 if value " "is negative, 0 if value is zero and 1 " "if value is positive. If x is a complex value then " "Sign returns the direction or 0." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4154 msgid "ceil" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4156 #, no-wrap msgid "ceil (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4157 msgid "Aliases: Ceiling" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:4159 #, no-wrap msgid "" "genius> ceil(1.1)\n" "= 2\n" "genius> ceil(-1.1)\n" "= -1\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4158 msgid "" "Get the lowest integer more than or equal to n. Examples: " "<_:screen-1/>" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4165 msgid "" "Note that you should be careful and notice that floating point numbers are " "stored in binary and so may not be what you expect. For example " "ceil(420/4.2) returns 101 instead of the expected " "100. This is because 4.2 is actually very slightly less than 4.2. Use " "rational representation 42/10 if you want exact " "arithmetic." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4177 msgid "exp" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4179 #, no-wrap msgid "exp (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4180 msgid "" "The exponential function. This is the function e^x " "where e is the base of " "the natural logarithm." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4186 msgid "" "See Wikipedia or Planetmath or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4196 msgid "float" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4198 #, no-wrap msgid "float (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4199 msgid "" "Make number a floating point value. That is returns the floating point " "representation of the number x." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4204 msgid "floor" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4206 #, no-wrap msgid "floor (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4207 msgid "Aliases: Floor" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4208 msgid "Get the highest integer less than or equal to n." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4213 msgid "ln" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4215 #, no-wrap msgid "ln (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4216 msgid "The natural logarithm, the logarithm to base e." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4217 msgid "" "See Wikipedia or Planetmath or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4227 msgid "log" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4229 #, no-wrap msgid "log (x)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4230 #, no-wrap msgid "log (x,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4231 msgid "" "Logarithm of x base b (calls DiscreteLog " "if in modulo mode), if base is not given, e is used." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4236 msgid "log10" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4238 #, no-wrap msgid "log10 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4239 msgid "Logarithm of x base 10." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4244 msgid "log2" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4246 #, no-wrap msgid "log2 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4247 msgid "Aliases: lg" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4248 msgid "Logarithm of x base 2." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4253 msgid "max" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4255 #, no-wrap msgid "max (a,args...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4256 msgid "Aliases: Max Maximum" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4257 msgid "Returns the maximum of arguments or matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4262 msgid "min" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4264 #, no-wrap msgid "min (a,args...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4265 msgid "Aliases: Min Minimum" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4266 msgid "Returns the minimum of arguments or matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4271 msgid "rand" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4273 #, no-wrap msgid "rand (size...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4274 msgid "" "Generate random float in the range [0,1). If size is " "given then a matrix (if two numbers are specified) or vector (if one number " "is specified) of the given size returned." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4281 msgid "randint" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4283 #, no-wrap msgid "randint (max,size...)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:4288 #, no-wrap msgid "" "genius> randint(4)\n" "= 3\n" "genius> randint(4,2)\n" "=\n" "[0 1]\n" "genius> randint(4,2,3)\n" "=\n" "[2 2 1\n" " 0 0 3]\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4284 msgid "" "Generate random integer in the range [0,max). If size is " "given then a matrix (if two numbers are specified) or vector (if one number " "is specified) of the given size returned. For example, <_:screen-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4303 msgid "round" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4305 #, no-wrap msgid "round (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4306 msgid "Aliases: Round" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4307 msgid "Round a number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4312 msgid "sqrt" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4314 #, no-wrap msgid "sqrt (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4315 msgid "Aliases: SquareRoot" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:4317 #, no-wrap msgid "" "genius> sqrt(2)\n" "= 1.41421356237\n" "genius> sqrt(-1)\n" "= 1i\n" "genius> sqrt(4) mod 7\n" "=\n" "[2 5]\n" "genius> 2*2 mod 7\n" "= 4\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4316 msgid "" "The square root. When operating modulo some integer will return either a " "null or a vector of the square roots. Examples: " "<_:screen-1/>" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4328 msgid "" "See Wikipedia or Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4337 msgid "trunc" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4339 #, no-wrap msgid "trunc (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4340 msgid "Aliases: Truncate IntegerPart" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4341 msgid "Truncate number to an integer (return the integer part)." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:4349 msgid "Trigonometry" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4352 msgid "acos" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4354 #, no-wrap msgid "acos (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4355 msgid "Aliases: arccos" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4356 msgid "The arccos (inverse cos) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4361 msgid "acosh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4363 #, no-wrap msgid "acosh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4364 msgid "Aliases: arccosh" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4365 msgid "The arccosh (inverse cosh) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4370 msgid "acot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4372 #, no-wrap msgid "acot (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4373 msgid "Aliases: arccot" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4374 msgid "The arccot (inverse cot) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4379 msgid "acoth" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4381 #, no-wrap msgid "acoth (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4382 msgid "Aliases: arccoth" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4383 msgid "The arccoth (inverse coth) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4388 msgid "acsc" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4390 #, no-wrap msgid "acsc (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4391 msgid "Aliases: arccsc" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4392 msgid "The inverse cosecant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4397 msgid "acsch" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4399 #, no-wrap msgid "acsch (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4400 msgid "Aliases: arccsch" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4401 msgid "The inverse hyperbolic cosecant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4406 msgid "asec" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4408 #, no-wrap msgid "asec (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4409 msgid "Aliases: arcsec" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4410 msgid "The inverse secant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4415 msgid "asech" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4417 #, no-wrap msgid "asech (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4418 msgid "Aliases: arcsech" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4419 msgid "The inverse hyperbolic secant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4424 msgid "asin" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4426 #, no-wrap msgid "asin (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4427 msgid "Aliases: arcsin" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4428 msgid "The arcsin (inverse sin) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4433 msgid "asinh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4435 #, no-wrap msgid "asinh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4436 msgid "Aliases: arcsinh" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4437 msgid "The arcsinh (inverse sinh) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4442 msgid "atan" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4444 #, no-wrap msgid "atan (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4445 msgid "Aliases: arctan" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4446 msgid "Calculates the arctan (inverse tan) function." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4447 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4456 msgid "atanh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4458 #, no-wrap msgid "atanh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4459 msgid "Aliases: arctanh" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4460 msgid "The arctanh (inverse tanh) function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4465 msgid "atan2" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4467 #, no-wrap msgid "atan2 (y, x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4468 msgid "Aliases: arctan2" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4469 msgid "" "Calculates the arctan2 function. If x>0 then it " "returns atan(y/x). If x<0 " "then it returns sign(y) * (pi - atan(|y/x|). When " "x=0 it returns sign(y) * pi/2. " "atan2(0,0) returns 0 rather than failing." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4477 msgid "" "See Wikipedia or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4486 msgid "cos" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4488 #, no-wrap msgid "cos (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4489 msgid "Calculates the cosine function." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4490 C/genius.xml:4516 C/genius.xml:4542 C/genius.xml:4568 #: C/genius.xml:4594 C/genius.xml:4620 msgid "" "See Wikipedia or Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4499 msgid "cosh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4501 #, no-wrap msgid "cosh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4502 msgid "Calculates the hyperbolic cosine function." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4503 C/genius.xml:4529 C/genius.xml:4555 C/genius.xml:4581 #: C/genius.xml:4607 C/genius.xml:4633 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4512 msgid "cot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4514 #, no-wrap msgid "cot (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4515 msgid "The cotangent function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4525 msgid "coth" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4527 #, no-wrap msgid "coth (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4528 msgid "The hyperbolic cotangent function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4538 msgid "csc" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4540 #, no-wrap msgid "csc (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4541 msgid "The cosecant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4551 msgid "csch" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4553 #, no-wrap msgid "csch (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4554 msgid "The hyperbolic cosecant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4564 msgid "sec" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4566 #, no-wrap msgid "sec (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4567 msgid "The secant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4577 msgid "sech" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4579 #, no-wrap msgid "sech (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4580 msgid "The hyperbolic secant function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4590 msgid "sin" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4592 #, no-wrap msgid "sin (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4593 msgid "Calculates the sine function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4603 msgid "sinh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4605 #, no-wrap msgid "sinh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4606 msgid "Calculates the hyperbolic sine function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4616 msgid "tan" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4618 #, no-wrap msgid "tan (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4619 msgid "Calculates the tan function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4629 msgid "tanh" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4631 #, no-wrap msgid "tanh (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4632 msgid "The hyperbolic tangent function." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:4645 msgid "Number Theory" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4648 msgid "AreRelativelyPrime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4650 #, no-wrap msgid "AreRelativelyPrime (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4651 msgid "" "Are the real integers a and b " "relatively prime? Returns true or false." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4655 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4665 msgid "BernoulliNumber" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4667 #, no-wrap msgid "BernoulliNumber (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4668 msgid "Return the nth Bernoulli number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4669 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4678 msgid "ChineseRemainder" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4680 #, no-wrap msgid "ChineseRemainder (a,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4681 msgid "Aliases: CRT" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4682 msgid "" "Find the x that solves the system given by the vector " "a and modulo the elements of m, using " "the Chinese Remainder Theorem." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4686 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4696 msgid "" "CombineFactorizations" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4698 #, no-wrap msgid "CombineFactorizations (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4699 msgid "Given two factorizations, give the factorization of the product." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4701 msgid "See Factorize." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4706 msgid "ConvertFromBase" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4708 #, no-wrap msgid "ConvertFromBase (v,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4709 msgid "Convert a vector of values indicating powers of b to a number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4714 msgid "ConvertToBase" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4716 #, no-wrap msgid "ConvertToBase (n,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4717 msgid "" "Convert a number to a vector of powers for elements in base b." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4722 msgid "DiscreteLog" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4724 #, no-wrap msgid "DiscreteLog (n,b,q)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4725 msgid "" "Find discrete log of n base b in " "Fq, the finite field of order q, " "where q is a prime, using the Silver-Pohlig-Hellman " "algorithm." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4728 msgid "" "See Wikipedia, Planetmath, or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4738 msgid "Divides" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4740 #, no-wrap msgid "Divides (m,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4741 msgid "" "Checks divisibility (if m divides n)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4746 msgid "EulerPhi" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4748 #, no-wrap msgid "EulerPhi (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4749 msgid "" "Compute the Euler phi function for n, that is the number " "of integers between 1 and n relatively prime to " "n." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4754 msgid "" "See Wikipedia, Planetmath, or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4764 msgid "ExactDivision" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4766 #, no-wrap msgid "ExactDivision (n,d)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4767 msgid "" "Return n/d but only if d divides " "n. If d does not divide n then this function returns garbage. This is a lot faster for very " "large numbers than the operation n/d, but it is only " "useful if you know that the division is exact." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4779 msgid "Factorize" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4781 #, no-wrap msgid "Factorize (n)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:4786 #, no-wrap msgid "" "genius> Factorize(11*11*13)\n" "=\n" "[1 11 13\n" " 1 2 1]" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4782 msgid "" "Return factorization of a number as a matrix. The first row is the primes in " "the factorization (including 1) and the second row are the powers. So for " "example: <_:screen-1/>" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4791 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4799 msgid "Factors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4801 #, no-wrap msgid "Factors (n)" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:4808 #, no-wrap msgid "" "for n=1 to 1000 do (\n" " if MatrixSum (Factors(n)) == 2*n then\n" " print(n)\n" ")\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4802 msgid "" "Return all factors of n in a vector. This includes all " "the non-prime factors as well. It includes 1 and the number itself. So to " "print all the perfect numbers (those that are sums of their factors) up to " "the number 1000 you could do (this is clearly very inefficient) " "<_:programlisting-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4818 msgid "FermatFactorization" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4820 #, no-wrap msgid "FermatFactorization (n,tries)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4821 msgid "" "Attempt Fermat factorization of n into (t-" "s)*(t+s), returns t and s " "as a vector if possible, null otherwise. " "tries specifies the number of tries before giving up." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4828 msgid "" "This is a fairly good factorization if your number is the product of two " "factors that are very close to each other." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4832 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4840 msgid "" "FindPrimitiveElementMod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4842 #, no-wrap msgid "FindPrimitiveElementMod (q)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4843 msgid "" "Find the first primitive element in Fq, the finite " "group of order q. Of course q must be " "a prime." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4849 msgid "" "FindRandomPrimitiveElementMod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4851 #, no-wrap msgid "FindRandomPrimitiveElementMod (q)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4852 msgid "" "Find a random primitive element in Fq, the finite " "group of order q (q must be a prime)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4858 msgid "IndexCalculus" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4860 #, no-wrap msgid "IndexCalculus (n,b,q,S)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4861 msgid "" "Compute discrete log base b of n in Fq, the finite group of order q (q a prime), using the factor base S. S should be a column of primes possibly with second column " "precalculated by IndexCalculusPrecalculation." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4870 msgid "" "IndexCalculusPrecalculation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4872 #, no-wrap msgid "IndexCalculusPrecalculation (b,q,S)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4873 msgid "" "Run the precalculation step of IndexCalculus for logarithms " "base b in Fq, the finite group of " "order q (q a prime), for the factor " "base S (where S is a column vector of " "primes). The logs will be precalculated and returned in the second column." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4883 msgid "IsEven" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4885 #, no-wrap msgid "IsEven (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4886 msgid "Tests if an integer is even." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4891 msgid "" "IsMersennePrimeExponent" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4893 #, no-wrap msgid "IsMersennePrimeExponent (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4894 msgid "" "Tests if a positive integer p is a Mersenne prime " "exponent. That is if 2p-1 is a prime. It does " "this by looking it up in a table of known values, which is relatively short. " "See also MersennePrimeExponents and LucasLehmer." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4905 C/genius.xml:5121 msgid "" "See Wikipedia, Planetmath, Mathworld or GIMPS for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4917 msgid "IsNthPower" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4919 #, no-wrap msgid "IsNthPower (m,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4920 msgid "" "Tests if a rational number m is a perfect nth power. See also IsPerfectPower and IsPerfectSquare." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4931 msgid "IsOdd" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4933 #, no-wrap msgid "IsOdd (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4934 msgid "Tests if an integer is odd." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4939 msgid "IsPerfectPower" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4941 #, no-wrap msgid "IsPerfectPower (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4942 msgid "" "Check an integer for being any perfect power, ab." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4947 msgid "IsPerfectSquare" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4949 #, no-wrap msgid "IsPerfectSquare (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4950 msgid "" "Check an integer for being a perfect square of an integer. The number must " "be an integer. Negative integers are never perfect squares of integers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4959 msgid "IsPrime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4961 #, no-wrap msgid "IsPrime (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4962 msgid "" "Tests primality of integers, for numbers less than 2.5e10 the answer is " "deterministic (if Riemann hypothesis is true). For numbers larger, the " "probability of a false positive depends on IsPrimeMillerRabinReps. That is the probability of false positive is 1/4 to the power " "IsPrimeMillerRabinReps. The default value of 22 yields " "a probability of about 5.7e-14." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4973 msgid "" "If false is returned, you can be sure that the number " "is a composite. If you want to be absolutely sure that you have a prime you " "can use " "MillerRabinTestSure but it may take a lot longer." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4981 C/genius.xml:5219 C/genius.xml:5260 msgid "" "See Planetmath or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4990 msgid "IsPrimitiveMod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:4992 #, no-wrap msgid "IsPrimitiveMod (g,q)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:4993 msgid "" "Check if g is primitive in Fq, the " "finite group of order q, where q is a " "prime. If q is not prime results are bogus." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:4999 msgid "" "IsPrimitiveModWithPrimeFactors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5001 #, no-wrap msgid "IsPrimitiveModWithPrimeFactors (g,q,f)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5002 msgid "" "Check if g is primitive in Fq, the " "finite group of order q, where q is a " "prime and f is a vector of prime factors of q-1. If q is not prime results are bogus." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5010 msgid "IsPseudoprime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5012 #, no-wrap msgid "IsPseudoprime (n,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5013 msgid "" "If n is a pseudoprime base b but not a " "prime, that is if b^(n-1) == 1 mod n. This calls the " "PseudoprimeTest" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5019 msgid "IsStrongPseudoprime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5021 #, no-wrap msgid "IsStrongPseudoprime (n,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5022 msgid "" "Test if n is a strong pseudoprime to base b but not a prime." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5027 msgid "Jacobi" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5029 #, no-wrap msgid "Jacobi (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5030 msgid "Aliases: JacobiSymbol" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5031 msgid "Calculate the Jacobi symbol (a/b) (b should be odd)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5036 msgid "JacobiKronecker" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5038 #, no-wrap msgid "JacobiKronecker (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5039 msgid "Aliases: JacobiKroneckerSymbol" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5040 msgid "" "Calculate the Jacobi symbol (a/b) with the Kronecker extension (a/2)=(2/a) " "when a odd, or (a/2)=0 when a even." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5045 msgid "LeastAbsoluteResidue" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5047 #, no-wrap msgid "LeastAbsoluteResidue (a,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5048 msgid "" "Return the residue of a mod n with the " "least absolute value (in the interval -n/2 to n/2)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5053 msgid "Legendre" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5055 #, no-wrap msgid "Legendre (a,p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5056 msgid "Aliases: LegendreSymbol" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5057 msgid "Calculate the Legendre symbol (a/p)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5058 msgid "" "See Planetmath " "or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5067 msgid "LucasLehmer" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5069 #, no-wrap msgid "LucasLehmer (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5070 msgid "" "Test if 2p-1 is a Mersenne prime using the Lucas-" "Lehmer test. See also MersennePrimeExponents and IsMersennePrimeExponent." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5076 msgid "" "See Wikipedia, Planetmath, or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5086 msgid "LucasNumber" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5088 #, no-wrap msgid "LucasNumber (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5089 msgid "Returns the nth Lucas number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5090 msgid "" "See Wikipedia, Planetmath, or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5100 msgid "" "MaximalPrimePowerFactors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5102 #, no-wrap msgid "MaximalPrimePowerFactors (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5103 msgid "Return all maximal prime power factors of a number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5108 msgid "" "MersennePrimeExponents" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5110 #, no-wrap msgid "MersennePrimeExponents" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5111 msgid "" "A vector of known Mersenne prime exponents, that is a list of positive " "integers p such that 2p-1 is a " "prime. See also IsMersennePrimeExponent and LucasLehmer." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5133 msgid "MillerRabinTest" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5135 #, no-wrap msgid "MillerRabinTest (n,reps)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5136 msgid "" "Use the Miller-Rabin primality test on n, reps number of times. The probability of false positive is " "(1/4)^reps. It is probably usually better to use " " IsPrime " "since that is faster and better on smaller integers." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5145 msgid "" "See Wikipedia or Planetmath or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5155 msgid "MillerRabinTestSure" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5157 #, no-wrap msgid "MillerRabinTestSure (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5158 msgid "" "Use the Miller-Rabin primality test on n with enough " "bases that assuming the Generalized Riemann Hypothesis the result is " "deterministic." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5163 msgid "" "See Wikipedia, Planetmath, or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5173 msgid "ModInvert" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5175 #, no-wrap msgid "ModInvert (n,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5176 msgid "Returns inverse of n mod m." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5177 msgid "" "See Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5185 msgid "MoebiusMu" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5187 #, no-wrap msgid "MoebiusMu (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5188 msgid "" "Return the Moebius mu function evaluated in n. That is, " "it returns 0 if n is not a product of distinct primes and " "(-1)^k if it is a product of k " "distinct primes." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5194 msgid "" "See Planetmath " "or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5203 msgid "NextPrime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5205 #, no-wrap msgid "NextPrime (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5206 msgid "" "Returns the least prime greater than n. Negatives of " "primes are considered prime and so to get the previous prime you can use " "-NextPrime(-n)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5211 msgid "" "This function uses the GMPs mpz_nextprime, which in " "turn uses the probabilistic Miller-Rabin test (See also MillerRabinTest). The " "probability of false positive is not tunable, but is low enough for all " "practical purposes." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5228 msgid "PadicValuation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5230 #, no-wrap msgid "PadicValuation (n,p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5231 msgid "" "Returns the p-adic valuation (number of trailing zeros in base p)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5232 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5241 msgid "PowerMod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5243 #, no-wrap msgid "PowerMod (a,b,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5244 msgid "" "Compute a^b mod m. The b's power " "of a modulo m. It is not necessary to " "use this function as it is automatically used in modulo mode. Hence " "a^b mod m is just as fast." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5255 msgid "Prime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5257 #, no-wrap msgid "Prime (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5258 msgid "Aliases: prime" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5259 msgid "Return the nth prime (up to a limit)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5269 msgid "PrimeFactors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5271 #, no-wrap msgid "PrimeFactors (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5272 msgid "Return all prime factors of a number as a vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5273 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5282 msgid "PseudoprimeTest" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5284 #, no-wrap msgid "PseudoprimeTest (n,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5285 msgid "" "Pseudoprime test, returns true if and only if " "b^(n-1) == 1 mod n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5287 msgid "" "See Planetmath or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5296 msgid "RemoveFactor" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5298 #, no-wrap msgid "RemoveFactor (n,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5299 msgid "" "Removes all instances of the factor m from the number " "n. That is divides by the largest power of m, that divides n." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5300 msgid "" "See Planetmath or " "Mathworld " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5309 msgid "" "SilverPohligHellmanWithFactorization" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5311 #, no-wrap msgid "SilverPohligHellmanWithFactorization (n,b,q,f)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5312 msgid "" "Find discrete log of n base b in " "Fq, the finite group of order q, " "where q is a prime using the Silver-Pohlig-Hellman " "algorithm, given f being the factorization of q-1." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5317 msgid "SqrtModPrime" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5319 #, no-wrap msgid "SqrtModPrime (n,p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5320 msgid "" "Find square root of n modulo p (where " "p is a prime). Null is returned if not a quadratic " "residue." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5321 msgid "" "See Planetmath " "or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5330 msgid "" "StrongPseudoprimeTest" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5332 #, no-wrap msgid "StrongPseudoprimeTest (n,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5333 msgid "" "Run the strong pseudoprime test base b on n." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5334 msgid "" "See Wikipedia, Planetmath, or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5344 msgid "gcd" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5346 #, no-wrap msgid "gcd (a,args...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5347 msgid "Aliases: GCD" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5348 msgid "" "Greatest common divisor of integers. You can enter as many integers as you " "want in the argument list, or you can give a vector or a matrix of integers. " "If you give more than one matrix of the same size then GCD is done element " "by element." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5355 msgid "" "See Wikipedia, Planetmath, or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5365 msgid "lcm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5367 #, no-wrap msgid "lcm (a,args...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5368 msgid "Aliases: LCM" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5369 msgid "" "Least common multiplier of integers. You can enter as many integers as you " "want in the argument list, or you can give a vector or a matrix of integers. " "If you give more than one matrix of the same size then LCM is done element " "by element." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5375 msgid "" "See Wikipedia, Planetmath, or Mathworld for more information." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:5388 msgid "Matrix Manipulation" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5391 msgid "AppendElement" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5393 #, no-wrap msgid "AppendElement (v,elt)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5394 msgid "" "Append an element to a vector and return the vector. No expansion is done. " "Normally a row vector is built if starting from null or " "a 1-by-1 matrix, but if given a column vector it will properly build a " "column vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5401 msgid "ApplyOverMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5403 #, no-wrap msgid "ApplyOverMatrix (a,func)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5404 msgid "" "Apply a function over all entries of a matrix and return a matrix of the " "results." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5409 msgid "ApplyOverMatrix2" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5411 #, no-wrap msgid "ApplyOverMatrix2 (a,b,func)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5412 msgid "" "Apply a function over all entries of 2 matrices (or 1 value and 1 matrix) " "and return a matrix of the results." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5417 msgid "ColumnsOf" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5419 #, no-wrap msgid "ColumnsOf (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5420 msgid "Gets the columns of a matrix as a horizontal vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5425 msgid "ComplementSubmatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5427 #, no-wrap msgid "ComplementSubmatrix (m,r,c)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5428 msgid "Remove column(s) and row(s) from a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5433 msgid "CompoundMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5435 #, no-wrap msgid "CompoundMatrix (k,A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5436 msgid "Calculate the kth compound matrix of A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5441 msgid "CountZeroColumns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5443 #, no-wrap msgid "CountZeroColumns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5444 msgid "" "Count the number of zero columns in a matrix. For example, once you column-" "reduce a matrix, you can use this to find the nullity. See cref and Nullity." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5454 msgid "DeleteColumn" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5456 #, no-wrap msgid "DeleteColumn (M,col)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5457 msgid "Delete a column of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5462 msgid "DeleteRow" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5464 #, no-wrap msgid "DeleteRow (M,row)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5465 msgid "Delete a row of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5470 msgid "DiagonalOf" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5472 #, no-wrap msgid "DiagonalOf (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5473 msgid "Gets the diagonal entries of a matrix as a column vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5474 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5482 msgid "DotProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5484 #, no-wrap msgid "DotProduct (u,v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5485 msgid "" "Get the dot product of two vectors. The vectors must be of the same size. No " "conjugates are taken so this is a bilinear form even if working over the " "complex numbers; This is the bilinear scalar product not the sesquilinear " "scalar product. See HermitianProduct for the standard sesquilinear " "inner product." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5487 msgid "" "See Wikipedia or Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5496 msgid "ExpandMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5498 #, no-wrap msgid "ExpandMatrix (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5499 msgid "" "Expands a matrix just like we do on unquoted matrix input. That is we expand " "any internal matrices as blocks. This is a way to construct matrices out of " "smaller ones and this is normally done automatically on input unless the " "matrix is quoted." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5509 msgid "HermitianProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5511 #, no-wrap msgid "HermitianProduct (u,v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5512 msgid "Aliases: InnerProduct" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5513 msgid "" "Get the Hermitian product of two vectors. The vectors must be of the same " "size. This is a sesquilinear form using the identity matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5514 msgid "" "See Wikipedia or Mathworld for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5523 msgid "I" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5525 #, no-wrap msgid "I (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5526 msgid "Aliases: eye" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5527 msgid "" "Return an identity matrix of a given size, that is n by " "n. If n is zero, returns " "null." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5528 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5537 msgid "IndexComplement" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5539 #, no-wrap msgid "IndexComplement (vec,msize)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5540 msgid "" "Return the index complement of a vector of indexes. Everything is one based. " "For example for vector [2,3] and size 5, we return [1,4,5]. If msize is 0, we always return null." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5547 msgid "IsDiagonal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5549 #, no-wrap msgid "IsDiagonal (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5550 msgid "Is a matrix diagonal." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5551 C/genius.xml:5701 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5560 msgid "IsIdentity" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5562 #, no-wrap msgid "IsIdentity (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5563 msgid "" "Check if a matrix is the identity matrix. Automatically returns " "false if the matrix is not square. Also works on " "numbers, in which case it is equivalent to x==1. When " "x is null (we could think of that as " "a 0 by 0 matrix), no error is generated and false is " "returned." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5572 msgid "IsLowerTriangular" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5574 #, no-wrap msgid "IsLowerTriangular (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5575 msgid "" "Is a matrix lower triangular. That is, are all the entries above the " "diagonal zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5580 msgid "IsMatrixInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5582 #, no-wrap msgid "IsMatrixInteger (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5583 msgid "Check if a matrix is a matrix of integers (non-complex)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5588 msgid "IsMatrixNonnegative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5590 #, no-wrap msgid "IsMatrixNonnegative (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5591 msgid "" "Check if a matrix is non-negative, that is if each element is non-negative. " "Do not confuse positive matrices with positive semi-definite matrices." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5593 C/genius.xml:5607 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5601 msgid "IsMatrixPositive" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5603 #, no-wrap msgid "IsMatrixPositive (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5604 msgid "" "Check if a matrix is positive, that is if each element is positive (and " "hence real). In particular, no element is 0. Do not confuse positive " "matrices with positive definite matrices." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5615 msgid "IsMatrixRational" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5617 #, no-wrap msgid "IsMatrixRational (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5618 msgid "Check if a matrix is a matrix of rational (non-complex) numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5624 msgid "IsMatrixReal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5626 #, no-wrap msgid "IsMatrixReal (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5627 msgid "Check if a matrix is a matrix of real (non-complex) numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5632 msgid "IsMatrixSquare" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5634 #, no-wrap msgid "IsMatrixSquare (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5635 msgid "Check if a matrix is square, that is its width is equal to its height." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5643 msgid "IsUpperTriangular" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5645 #, no-wrap msgid "IsUpperTriangular (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5646 msgid "" "Is a matrix upper triangular? That is, a matrix is upper triangular if all " "the entries below the diagonal are zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5651 msgid "IsValueOnly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5653 #, no-wrap msgid "IsValueOnly (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5654 msgid "" "Check if a matrix is a matrix of numbers only. Many internal functions make " "this check. Values can be any number including complex numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5660 msgid "IsVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5662 #, no-wrap msgid "IsVector (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5663 msgid "" "Is argument a horizontal or a vertical vector. Genius does not distinguish " "between a matrix and a vector and a vector is just a 1 by n or n by 1 matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5672 msgid "IsZero" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5674 #, no-wrap msgid "IsZero (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5675 msgid "" "Check if a matrix is composed of all zeros. Also works on numbers, in which " "case it is equivalent to x==0. When x is null (we could think of that as a 0 by 0 " "matrix), no error is generated and true is returned as " "the condition is vacuous." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5685 msgid "LowerTriangular" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5687 #, no-wrap msgid "LowerTriangular (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5688 msgid "" "Returns a copy of the matrix M with all the entries above " "the diagonal set to zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5693 msgid "MakeDiagonal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5695 #, no-wrap msgid "MakeDiagonal (v,arg...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5696 msgid "Aliases: diag" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5697 msgid "" "Make diagonal matrix from a vector. Alternatively you can pass in the values " "to put on the diagonal as arguments. So MakeDiagonal([1,2,3]) is the same as MakeDiagonal(1,2,3)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5710 msgid "MakeVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5712 #, no-wrap msgid "MakeVector (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5713 msgid "Alias: MakeColumnVector" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5714 msgid "" "Make column vector out of matrix by putting columns above each other. " "Returns null when given null. Can " "be used to ensure a vector is a column vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5721 msgid "MakeRowVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5723 #, no-wrap msgid "MakeRowVector (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5724 msgid "" "Make row vector out of matrix by putting rows one after another. Returns " "null when given null. Can be used " "to ensure a vector is a row vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5731 msgid "MatrixProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5733 #, no-wrap msgid "MatrixProduct (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5734 msgid "" "Calculate the product of all elements in a matrix or vector. That is we " "multiply all the elements and return a number that is the product of all the " "elements." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5743 msgid "MatrixSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5745 #, no-wrap msgid "MatrixSum (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5746 msgid "" "Calculate the sum of all elements in a matrix or vector. That is we add all " "the elements and return a number that is the sum of all the elements." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5755 msgid "MatrixSumSquares" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5757 #, no-wrap msgid "MatrixSumSquares (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5758 msgid "Calculate the sum of squares of all elements in a matrix or vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5764 msgid "NonzeroColumns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5766 #, no-wrap msgid "NonzeroColumns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5767 msgid "" "Returns a row vector of the indices of nonzero columns in the matrix " "M." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5773 msgid "NonzeroElements" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5775 #, no-wrap msgid "NonzeroElements (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5776 msgid "" "Returns a row vector of the indices of nonzero elements in the vector " "v." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5782 msgid "OuterProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5784 #, no-wrap msgid "OuterProduct (u,v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5785 msgid "" "Get the outer product of two vectors. That is, suppose that u and v are vertical vectors, then the outer " "product is v * u.'." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5792 msgid "ReverseVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5794 #, no-wrap msgid "ReverseVector (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5795 msgid "" "Reverse elements in a vector. Return null if given " "null" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5800 msgid "RowSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5802 #, no-wrap msgid "RowSum (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5803 msgid "" "Calculate sum of each row in a matrix and return a vertical vector with the " "result." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5809 msgid "RowSumSquares" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5811 #, no-wrap msgid "RowSumSquares (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5812 msgid "" "Calculate sum of squares of each row in a matrix and return a vertical " "vector with the results." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5817 msgid "RowsOf" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5819 #, no-wrap msgid "RowsOf (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5820 msgid "" "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 M. This function is useful if you wish to loop over the rows of a " "matrix. For example, as for r in RowsOf(M) do something(r)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5829 msgid "SetMatrixSize" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5831 #, no-wrap msgid "SetMatrixSize (M,rows,columns)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5832 msgid "" "Make new matrix of given size from old one. That is, a new matrix will be " "returned to which the old one is copied. Entries that don't fit are clipped " "and extra space is filled with zeros. If rows or " "columns are zero then null is " "returned." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5842 msgid "ShuffleVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5844 #, no-wrap msgid "ShuffleVector (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5845 msgid "" "Shuffle elements in a vector. Return null if given " "null." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5846 msgid "Version 1.0.13 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5851 msgid "SortVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5853 #, no-wrap msgid "SortVector (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5854 msgid "Sort vector elements in an increasing order." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5859 msgid "StripZeroColumns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5861 #, no-wrap msgid "StripZeroColumns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5862 msgid "Removes any all-zero columns of M." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5867 msgid "StripZeroRows" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5869 #, no-wrap msgid "StripZeroRows (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5870 msgid "Removes any all-zero rows of M." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5875 msgid "Submatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5877 #, no-wrap msgid "Submatrix (m,r,c)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5878 msgid "" "Return column(s) and row(s) from a matrix. This is just equivalent to " "m@(r,c). r and c should be vectors of rows and columns (or single numbers if only " "one row or column is needed)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5885 msgid "SwapRows" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5887 #, no-wrap msgid "SwapRows (m,row1,row2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5888 msgid "Swap two rows in a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5893 msgid "UpperTriangular" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5895 #, no-wrap msgid "UpperTriangular (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5896 msgid "" "Returns a copy of the matrix M with all the entries below " "the diagonal set to zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5901 msgid "columns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5903 #, no-wrap msgid "columns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5904 msgid "Get the number of columns of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5909 msgid "elements" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5911 #, no-wrap msgid "elements (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5912 msgid "" "Get the total number of elements of a matrix. This is the number of columns " "times the number of rows." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5918 msgid "ones" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5920 #, no-wrap msgid "ones (rows,columns...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5921 msgid "" "Make an matrix of all ones (or a row vector if only one argument is given). " "Returns null if either rows or columns are zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5926 msgid "rows" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5928 #, no-wrap msgid "rows (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5929 msgid "Get the number of rows of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5934 msgid "zeros" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5936 #, no-wrap msgid "zeros (rows,columns...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5937 msgid "" "Make a matrix of all zeros (or a row vector if only one argument is given). " "Returns null if either rows or columns are zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5948 msgid "AuxiliaryUnitMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5950 #, no-wrap msgid "AuxiliaryUnitMatrix (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5951 msgid "" "Get the auxiliary unit matrix of size n. This is a square " "matrix with that is all zero except the superdiagonal being all ones. It is " "the Jordan block matrix of one zero eigenvalue." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5953 msgid "" "See Planetmath or Mathworld for more " "information on Jordan Canonical Form." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5962 msgid "BilinearForm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5964 #, no-wrap msgid "BilinearForm (v,A,w)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5965 msgid "Evaluate (v,w) with respect to the bilinear form given by the matrix A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5970 msgid "BilinearFormFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5972 #, no-wrap msgid "BilinearFormFunction (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5973 msgid "" "Return a function that evaluates two vectors with respect to the bilinear " "form given by A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5978 msgid "" "CharacteristicPolynomial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5980 #, no-wrap msgid "CharacteristicPolynomial (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5981 msgid "Aliases: CharPoly" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5982 msgid "" "Get the characteristic polynomial as a vector. That is, return the " "coefficients of the polynomial starting with the constant term. This is the " "polynomial defined by det(M-xI). The roots of this " "polynomial are the eigenvalues of M. See also CharacteristicPolynomialFunction." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:5988 C/genius.xml:6005 msgid "" "See Wikipedia or Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:5997 msgid "" "CharacteristicPolynomialFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:5999 #, no-wrap msgid "CharacteristicPolynomialFunction (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6000 msgid "" "Get the characteristic polynomial as a function. This is the polynomial " "defined by det(M-xI). The roots of this polynomial " "are the eigenvalues of M. See also CharacteristicPolynomial." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6014 msgid "ColumnSpace" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6016 #, no-wrap msgid "ColumnSpace (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6017 msgid "" "Get a basis matrix for the columnspace of a matrix. That is, return a matrix " "whose columns are the basis for the column space of M. " "That is the space spanned by the columns of M." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6021 C/genius.xml:6211 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6029 msgid "CommutationMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6031 #, no-wrap msgid "CommutationMatrix (m, n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6032 msgid "" "Return the commutation matrix K(m,n), which is the " "unique m*n by m*n matrix such " "that K(m,n) * MakeVector(A) = MakeVector(A.') for all " "m by n matrices A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6039 msgid "CompanionMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6041 #, no-wrap msgid "CompanionMatrix (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6042 msgid "Companion matrix of a polynomial (as vector)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6047 msgid "ConjugateTranspose" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6049 #, no-wrap msgid "ConjugateTranspose (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6050 msgid "" "Conjugate transpose of a matrix (adjoint). This is the same as the " "' operator." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6052 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6061 msgid "Convolution" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6063 #, no-wrap msgid "Convolution (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6064 msgid "Aliases: convol" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6065 msgid "Calculate convolution of two horizontal vectors." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6070 msgid "ConvolutionVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6072 #, no-wrap msgid "ConvolutionVector (a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6073 msgid "" "Calculate convolution of two horizontal vectors. Return result as a vector " "and not added together." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6079 msgid "CrossProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6081 #, no-wrap msgid "CrossProduct (v,w)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6082 msgid "" "CrossProduct of two vectors in R3 as a column " "vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6084 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6092 msgid "" "DeterminantalDivisorsInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6094 #, no-wrap msgid "DeterminantalDivisorsInteger (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6095 msgid "Get the determinantal divisors of an integer matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6100 msgid "DirectSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6102 #, no-wrap msgid "DirectSum (M,N...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6103 msgid "Direct sum of matrices." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6104 C/genius.xml:6116 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6112 msgid "" "DirectSumMatrixVector" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6114 #, no-wrap msgid "DirectSumMatrixVector (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6115 msgid "Direct sum of a vector of matrices." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6124 msgid "Eigenvalues" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6126 #, no-wrap msgid "Eigenvalues (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6127 msgid "Aliases: eig" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6128 msgid "" "Get the eigenvalues of a square matrix. Currently only works for matrices of " "size up to 4 by 4, or for triangular matrices (for which the eigenvalues are " "on the diagonal)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6133 msgid "" "See Wikipedia, Planetmath, " "or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6143 msgid "Eigenvectors" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6145 #, no-wrap msgid "Eigenvectors (M)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6146 #, no-wrap msgid "Eigenvectors (M, &eigenvalues)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6147 #, no-wrap msgid "Eigenvectors (M, &eigenvalues, &multiplicities)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6148 msgid "" "Get the eigenvectors of a square matrix. Optionally get also the eigenvalues " "and their algebraic multiplicities. Currently only works for matrices of " "size up to 2 by 2." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6152 msgid "" "See Wikipedia, Planetmath, " "or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6162 msgid "GramSchmidt" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6164 #, no-wrap msgid "GramSchmidt (v,B...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6165 msgid "" "Apply the Gram-Schmidt process (to the columns) with respect to inner " "product given by B. If B is not given " "then the standard Hermitian product is used. B can either " "be a sesquilinear function of two arguments or it can be a matrix giving a " "sesquilinear form. The vectors will be made orthonormal with respect to " "B." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6171 msgid "" "See Wikipedia or Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6180 msgid "HankelMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6182 #, no-wrap msgid "HankelMatrix (c,r)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6183 msgid "" "Hankel matrix, a matrix whose skew-diagonals are constant. c is the first row and r is the last column. It is " "assumed that both arguments are vectors and the last element of c is the same as the first element of r." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6186 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6194 msgid "HilbertMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6196 #, no-wrap msgid "HilbertMatrix (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6197 msgid "Hilbert matrix of order n." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6198 C/genius.xml:6239 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6207 msgid "Image" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6209 #, no-wrap msgid "Image (T)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6210 msgid "Get the image (columnspace) of a linear transform." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6219 msgid "InfNorm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6221 #, no-wrap msgid "InfNorm (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6222 msgid "" "Get the Inf Norm of a vector, sometimes called the sup norm or the max norm." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6227 msgid "" "InvariantFactorsInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6229 #, no-wrap msgid "InvariantFactorsInteger (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6230 msgid "Get the invariant factors of a square integer matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6235 msgid "InverseHilbertMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6237 #, no-wrap msgid "InverseHilbertMatrix (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6238 msgid "Inverse Hilbert matrix of order n." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6248 msgid "IsHermitian" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6250 #, no-wrap msgid "IsHermitian (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6251 msgid "Is a matrix Hermitian. That is, is it equal to its conjugate transpose." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6252 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6261 msgid "IsInSubspace" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6263 #, no-wrap msgid "IsInSubspace (v,W)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6264 msgid "Test if a vector is in a subspace." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6269 msgid "IsInvertible" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6271 #, no-wrap msgid "IsInvertible (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6272 msgid "" "Is a matrix (or number) invertible (Integer matrix is invertible if and only " "if it is invertible over the integers)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6277 msgid "IsInvertibleField" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6279 #, no-wrap msgid "IsInvertibleField (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6280 msgid "Is a matrix (or number) invertible over a field." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6285 msgid "IsNormal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6287 #, no-wrap msgid "IsNormal (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6288 msgid "" "Is M a normal matrix. That is, does M*M' == " "M'*M." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6290 msgid "" "See Planetmath or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6299 msgid "IsPositiveDefinite" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6301 #, no-wrap msgid "IsPositiveDefinite (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6302 msgid "" "Is M a Hermitian positive definite matrix. That is if " "HermitianProduct(M*v,v) is always strictly positive " "for any vector v. M must be square and " "Hermitian to be positive definite. The check that is performed is that every " "principal submatrix has a non-negative determinant. (See HermitianProduct)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6309 msgid "" "Note that some authors (for example Mathworld) do not require that " "M be Hermitian, and then the condition is on the real " "part of the inner product, but we do not take this view. If you wish to " "perform this check, just check the Hermitian part of the matrix M as follows: IsPositiveDefinite(M+M')." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6317 msgid "" "See Wikipedia, Planetmath, or Mathworld for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6327 msgid "" "IsPositiveSemidefinite" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6329 #, no-wrap msgid "IsPositiveSemidefinite (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6330 msgid "" "Is M a Hermitian positive semidefinite matrix. That is if " "HermitianProduct(M*v,v) is always non-negative for " "any vector v. M must be square and " "Hermitian to be positive semidefinite. The check that is performed is that " "every principal submatrix has a non-negative determinant. (See HermitianProduct)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6337 msgid "" "Note that some authors do not require that M be " "Hermitian, and then the condition is on the real part of the inner product, " "but we do not take this view. If you wish to perform this check, just check " "the Hermitian part of the matrix M as follows: " "IsPositiveSemidefinite(M+M')." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6345 msgid "" "See Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6354 msgid "IsSkewHermitian" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6356 #, no-wrap msgid "IsSkewHermitian (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6357 msgid "" "Is a matrix skew-Hermitian. That is, is the conjugate transpose equal to " "negative of the matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6358 msgid "" "See Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6366 msgid "IsUnitary" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6368 #, no-wrap msgid "IsUnitary (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6369 msgid "" "Is a matrix unitary? That is, does M'*M and " "M*M' equal the identity." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6372 msgid "" "See Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6381 msgid "JordanBlock" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6383 #, no-wrap msgid "JordanBlock (n,lambda)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6384 msgid "Aliases: J" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6385 msgid "" "Get the Jordan block corresponding to the eigenvalue lambda with multiplicity n." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6388 msgid "" "See Planetmath or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6397 msgid "Kernel" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6399 #, no-wrap msgid "Kernel (T)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6400 msgid "Get the kernel (nullspace) of a linear transform." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6401 msgid "(See NullSpace)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6408 msgid "KroneckerProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6410 #, no-wrap msgid "KroneckerProduct (M, N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6411 msgid "Aliases: TensorProduct" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6412 msgid "" "Compute the Kronecker product (tensor product in standard basis) of two " "matrices." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6416 msgid "" "See Wikipedia, Planetmath or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6428 msgid "LUDecomposition" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6430 #, no-wrap msgid "LUDecomposition (A, L, U)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:6439 #, no-wrap msgid "genius> LUDecomposition(A,&L,&U)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6431 msgid "" "Get the LU decomposition of A, that is find a lower " "triangular matrix and upper triangular matrix whose product is A. Store the result in the L and U, which should be references. It returns true " "if successful. For example suppose that A is a square matrix, then after " "running: <_:screen-1/> You will have the lower matrix stored in a variable " "called L and the upper matrix in a variable called " "U." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6445 msgid "" "This is the LU decomposition of a matrix aka Crout and/or Cholesky " "reduction. (ISBN 0-201-11577-8 pp.99-103) The upper triangular matrix " "features a diagonal of values 1 (one). This is not Doolittle's Method, which " "features the 1's diagonal on the lower matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6453 msgid "" "Not all matrices have LU decompositions, for example [0,1;1,0] does not and this function returns false in " "this case and sets L and U to " "null." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6459 msgid "" "See Wikipedia, Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6469 msgid "Minor" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6471 #, no-wrap msgid "Minor (M,i,j)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6472 msgid "Get the i-j minor of a matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6473 msgid "" "See Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6481 msgid "NonPivotColumns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6483 #, no-wrap msgid "NonPivotColumns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6484 msgid "Return the columns that are not the pivot columns of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6489 msgid "Norm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6491 #, no-wrap msgid "Norm (v,p...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6492 msgid "Aliases: norm" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6493 msgid "Get the p Norm (or 2 Norm if no p is supplied) of a vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6498 msgid "NullSpace" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6500 #, no-wrap msgid "NullSpace (T)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6501 msgid "" "Get the nullspace of a matrix. That is the kernel of the linear mapping that " "the matrix represents. This is returned as a matrix whose column space is " "the nullspace of T." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6505 msgid "" "See Planetmath for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6513 msgid "Nullity" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6515 #, no-wrap msgid "Nullity (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6516 msgid "Aliases: nullity" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6517 msgid "" "Get the nullity of a matrix. That is, return the dimension of the nullspace; " "the dimension of the kernel of M." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6519 msgid "" "See Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6527 msgid "OrthogonalComplement" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6529 #, no-wrap msgid "OrthogonalComplement (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6530 msgid "Get the orthogonal complement of the columnspace." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6535 msgid "PivotColumns" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6537 #, no-wrap msgid "PivotColumns (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6538 msgid "" "Return pivot columns of a matrix, that is columns that have a leading 1 in " "row reduced form. Also returns the row where they occur." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6543 msgid "Projection" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6545 #, no-wrap msgid "Projection (v,W,B...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6546 msgid "" "Projection of vector v onto subspace W " "with respect to inner product given by B. If B is not given then the standard Hermitian product is used. " "B can either be a sesquilinear function of two arguments " "or it can be a matrix giving a sesquilinear form." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6556 msgid "QRDecomposition" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6558 #, no-wrap msgid "QRDecomposition (A, Q)" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:6566 #, no-wrap msgid "genius> R = QRDecomposition(A,&Q)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6559 msgid "" "Get the QR decomposition of a square matrix A, returns " "the upper triangular matrix R and sets Q to the orthogonal (unitary) matrix. Q should be " "a reference or null if you don't want any return. For " "example: <_:screen-1/> You will have the upper triangular matrix stored in a " "variable called R and the orthogonal (unitary) matrix " "stored in Q." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6573 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6583 msgid "RayleighQuotient" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6585 #, no-wrap msgid "RayleighQuotient (A,x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6586 msgid "" "Return the Rayleigh quotient (also called the Rayleigh-Ritz quotient or " "ratio) of a matrix and a vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6587 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6595 msgid "" "RayleighQuotientIteration" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6597 #, no-wrap msgid "RayleighQuotientIteration (A,x,epsilon,maxiter,vecref)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6598 msgid "" "Find eigenvalues of A using the Rayleigh quotient " "iteration method. x is a guess at a eigenvector and could " "be random. It should have nonzero imaginary part if it will have any chance " "at finding complex eigenvalues. The code will run at most maxiter iterations and return null if we cannot get " "within an error of epsilon. vecref " "should either be null or a reference to a variable " "where the eigenvector should be stored." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6608 msgid "" "See Planetmath " "for more information on Rayleigh quotient." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6616 msgid "Rank" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6618 #, no-wrap msgid "Rank (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6619 msgid "Aliases: rank" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6620 msgid "Get the rank of a matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6621 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6629 msgid "RosserMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6631 #, no-wrap msgid "RosserMatrix ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6632 msgid "" "Returns the Rosser matrix, which is a classic symmetric eigenvalue test " "problem." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6637 msgid "Rotation2D" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6639 #, no-wrap msgid "Rotation2D (angle)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6640 msgid "Aliases: RotationMatrix" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6641 msgid "" "Return the matrix corresponding to rotation around origin in " "R2." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6646 msgid "Rotation3DX" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6648 #, no-wrap msgid "Rotation3DX (angle)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6649 msgid "" "Return the matrix corresponding to rotation around origin in " "R3 about the x-axis." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6654 msgid "Rotation3DY" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6656 #, no-wrap msgid "Rotation3DY (angle)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6657 msgid "" "Return the matrix corresponding to rotation around origin in " "R3 about the y-axis." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6662 msgid "Rotation3DZ" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6664 #, no-wrap msgid "Rotation3DZ (angle)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6665 msgid "" "Return the matrix corresponding to rotation around origin in " "R3 about the z-axis." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6670 msgid "RowSpace" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6672 #, no-wrap msgid "RowSpace (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6673 msgid "Get a basis matrix for the rowspace of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6678 msgid "SesquilinearForm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6680 #, no-wrap msgid "SesquilinearForm (v,A,w)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6681 msgid "" "Evaluate (v,w) with respect to the sesquilinear form given by the matrix A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6686 msgid "" "SesquilinearFormFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6688 #, no-wrap msgid "SesquilinearFormFunction (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6689 msgid "" "Return a function that evaluates two vectors with respect to the " "sesquilinear form given by A." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6694 msgid "SmithNormalFormField" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6696 #, no-wrap msgid "SmithNormalFormField (A)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6697 msgid "" "Returns the Smith normal form of a matrix over fields (will end up with 1's " "on the diagonal)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6698 C/genius.xml:6710 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6706 msgid "" "SmithNormalFormInteger" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6708 #, no-wrap msgid "SmithNormalFormInteger (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6709 msgid "Return the Smith normal form for square integer matrices over integers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6718 msgid "SolveLinearSystem" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6720 #, no-wrap msgid "SolveLinearSystem (M,V,args...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6721 msgid "" "Solve linear system Mx=V, return solution V if there is a unique solution, " "null otherwise. Extra two reference parameters can " "optionally be used to get the reduced M and V." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6726 msgid "ToeplitzMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6728 #, no-wrap msgid "ToeplitzMatrix (c, r...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6729 msgid "" "Return the Toeplitz matrix constructed given the first column c and " "(optionally) the first row r. If only the column c is given then it is " "conjugated and the nonconjugated version is used for the first row to give a " "Hermitian matrix (if the first element is real)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6733 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6742 msgid "Trace" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6744 #, no-wrap msgid "Trace (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6745 msgid "Aliases: trace" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6746 msgid "" "Calculate the trace of a matrix. That is the sum of the diagonal elements." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6747 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6756 msgid "Transpose" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6758 #, no-wrap msgid "Transpose (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6759 msgid "" "Transpose of a matrix. This is the same as the .' " "operator." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6761 msgid "" "See Wikipedia " "or Planetmath for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6770 msgid "VandermondeMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6772 #, no-wrap msgid "VandermondeMatrix (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6773 msgid "Aliases: vander" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6774 msgid "Return the Vandermonde matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6775 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6783 msgid "VectorAngle" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6785 #, no-wrap msgid "VectorAngle (v,w,B...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6786 msgid "" "The angle of two vectors with respect to inner product given by B. If B is not given then the standard Hermitian " "product is used. B can either be a sesquilinear function " "of two arguments or it can be a matrix giving a sesquilinear form." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6795 msgid "VectorSpaceDirectSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6797 #, no-wrap msgid "VectorSpaceDirectSum (M,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6798 msgid "The direct sum of the vector spaces M and N." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6803 msgid "" "VectorSubspaceIntersection" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6805 #, no-wrap msgid "VectorSubspaceIntersection (M,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6806 msgid "Intersection of the subspaces given by M and N." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6811 msgid "VectorSubspaceSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6813 #, no-wrap msgid "VectorSubspaceSum (M,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6814 msgid "" "The sum of the vector spaces M and N, that is {w | w=m+n, m in M, n in N}." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6819 msgid "adj" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6821 #, no-wrap msgid "adj (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6822 msgid "Aliases: Adjugate" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6823 msgid "Get the classical adjoint (adjugate) of a matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6828 msgid "cref" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6830 #, no-wrap msgid "cref (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6831 msgid "" "Aliases: CREF ColumnReducedEchelonForm" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6832 msgid "Compute the Column Reduced Echelon Form." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6837 msgid "det" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6839 #, no-wrap msgid "det (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6840 msgid "Aliases: Determinant" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6841 msgid "Get the determinant of a matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6842 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6851 msgid "ref" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6853 #, no-wrap msgid "ref (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6854 msgid "Aliases: REF RowEchelonForm" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6855 msgid "" "Get the row echelon form of a matrix. That is, apply gaussian elimination " "but not backaddition to M. The pivot rows are divided to " "make all pivots 1." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6858 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6867 msgid "rref" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6869 #, no-wrap msgid "rref (M)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6870 msgid "" "Aliases: RREF ReducedRowEchelonForm" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6871 msgid "" "Get the reduced row echelon form of a matrix. That is, apply gaussian " "elimination together with backaddition to M." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6872 msgid "" "See Wikipedia or Planetmath for more " "information." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:6884 msgid "Combinatorics" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6887 msgid "Catalan" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6889 #, no-wrap msgid "Catalan (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6890 msgid "Get nth Catalan number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6891 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6899 msgid "Combinations" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6901 #, no-wrap msgid "Combinations (k,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6902 msgid "" "Get all combinations of k numbers from 1 to n as a vector of vectors. (See " "also NextCombination)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6905 C/genius.xml:7103 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6913 msgid "DoubleFactorial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6915 #, no-wrap msgid "DoubleFactorial (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6916 msgid "Double factorial: n(n-2)(n-4)..." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6917 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6925 msgid "Factorial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6927 #, no-wrap msgid "Factorial (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6928 msgid "Factorial: n(n-1)(n-2)..." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6929 msgid "" "See Planetmath for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6937 msgid "FallingFactorial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6939 #, no-wrap msgid "FallingFactorial (n,k)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6940 msgid "Falling factorial: (n)_k = n(n-1)...(n-(k-1))" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6941 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6949 msgid "Fibonacci" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6951 #, no-wrap msgid "Fibonacci (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6952 msgid "Aliases: fib" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6953 msgid "" "Calculate nth Fibonacci number. That is the number " "defined recursively by Fibonacci(n) = Fibonacci(n-1) + " "Fibonacci(n-2) and Fibonacci(1) = Fibonacci(2) = 1." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6960 msgid "" "See Wikipedia or Planetmath or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6970 msgid "FrobeniusNumber" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6972 #, no-wrap msgid "FrobeniusNumber (v,arg...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6973 msgid "" "Calculate the Frobenius number. That is calculate largest number that cannot " "be given as a non-negative integer linear combination of a given vector of " "non-negative integers. The vector can be given as separate numbers or a " "single vector. All the numbers given should have GCD of 1." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6980 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6989 msgid "GaloisMatrix" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6991 #, no-wrap msgid "GaloisMatrix (combining_rule)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:6992 msgid "" "Galois matrix given a linear combining rule (a_1*x_1+...+a_n*x_n=x_(n+1))." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:6997 msgid "GreedyAlgorithm" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:6999 #, no-wrap msgid "GreedyAlgorithm (n,v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7000 msgid "" "Find the vector c of non-negative integers such that " "taking the dot product with v is equal to n. If not " "possible returns null. v should be " "given sorted in increasing order and should consist of non-negative integers." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7007 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7016 msgid "HarmonicNumber" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7018 #, no-wrap msgid "HarmonicNumber (n,r)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7019 msgid "Aliases: HarmonicH" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7020 msgid "" "Harmonic Number, the nth harmonic number of order " "r. That is, it is the sum of 1/k^r " "for k from 1 to n. Equivalent to sum k = 1 to " "n do 1/k^r." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7023 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7031 msgid "Hofstadter" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7033 #, no-wrap msgid "Hofstadter (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7034 msgid "" "Hofstadter's function q(n) defined by q(1)=1, q(2)=1, q(n)=q(n-q(n-1))+q(n-" "q(n-2))." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7035 msgid "" "See Wikipedia for more information. The sequence " "is A005185 in OEIS." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7044 msgid "" "LinearRecursiveSequence" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7046 #, no-wrap msgid "LinearRecursiveSequence (seed_values,combining_rule,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7047 msgid "Compute linear recursive sequence using Galois stepping." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7052 msgid "Multinomial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7054 #, no-wrap msgid "Multinomial (v,arg...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7055 msgid "" "Calculate multinomial coefficients. Takes a vector of k " "non-negative integers and computes the multinomial coefficient. This " "corresponds to the coefficient in the homogeneous polynomial in k variables with the corresponding powers." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:7064 #, no-wrap msgid "(a+b+c)! / (a!b!c!)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7061 msgid "" "The formula for Multinomial(a,b,c) can be written as: " "<_:programlisting-1/> In other words, if we would have only two elements, " "then Multinomial(a,b) is the same thing as " "Binomial(a+b,a) or Binomial(a+b,b)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7071 msgid "" "See Wikipedia, Planetmath, or Mathworld for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7081 msgid "NextCombination" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7083 #, no-wrap msgid "NextCombination (v,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7084 msgid "" "Get combination that would come after v in call to combinations, first " "combination should be [1:k]. This function is useful " "if you have many combinations to go through and you don't want to waste " "memory to store them all." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:7091 #, no-wrap msgid "" "for n in Combinations (4,6) do (\n" " SomeFunction (n)\n" ");\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:7096 #, no-wrap msgid "" "n:=[1:4];\n" "do (\n" " SomeFunction (n)\n" ") while not IsNull(n:=NextCombination(n,6));\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7089 msgid "" "For example with Combinations you would normally write a loop like: " "<_:screen-1/> But with NextCombination you would write something like: " "<_:screen-2/> See also Combinations." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7111 msgid "Pascal" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7113 #, no-wrap msgid "Pascal (i)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7114 msgid "" "Get the Pascal's triangle as a matrix. This will return an i+1 by i+1 lower diagonal matrix that is the " "Pascal's triangle after i iterations." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7118 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7126 msgid "Permutations" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7128 #, no-wrap msgid "Permutations (k,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7129 msgid "" "Get all permutations of k numbers from 1 to n as a vector of vectors." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7130 C/genius.xml:7219 msgid "" "See Mathworld or Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7139 msgid "RisingFactorial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7141 #, no-wrap msgid "RisingFactorial (n,k)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7142 msgid "Aliases: Pochhammer" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7143 msgid "(Pochhammer) Rising factorial: (n)_k = n(n+1)...(n+(k-1))." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7144 msgid "" "See Planetmath " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7152 msgid "StirlingNumberFirst" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7154 #, no-wrap msgid "StirlingNumberFirst (n,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7155 msgid "Aliases: StirlingS1" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7156 msgid "Stirling number of the first kind." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7157 msgid "" "See Planetmath or Mathworld " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7166 msgid "StirlingNumberSecond" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7168 #, no-wrap msgid "StirlingNumberSecond (n,m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7169 msgid "Aliases: StirlingS2" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7170 msgid "Stirling number of the second kind." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7171 msgid "" "See Planetmath or Mathworld " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7180 msgid "Subfactorial" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7182 #, no-wrap msgid "Subfactorial (n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7183 msgid "Subfactorial: n! times sum_{k=0}^n (-1)^k/k!." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7188 msgid "Triangular" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7190 #, no-wrap msgid "Triangular (nth)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7191 msgid "Calculate the nth triangular number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7192 msgid "" "See Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7200 msgid "nCr" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7202 #, no-wrap msgid "nCr (n,r)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7203 msgid "Aliases: Binomial" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7204 msgid "" "Calculate combinations, that is, the binomial coefficient. n can be any real number." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7206 msgid "" "See Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7214 msgid "nPr" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7216 #, no-wrap msgid "nPr (n,r)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7217 msgid "" "Calculate the number of permutations of size r of numbers " "from 1 to n." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:7231 msgid "Calculus" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7234 msgid "" "CompositeSimpsonsRule" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7236 #, no-wrap msgid "CompositeSimpsonsRule (f,a,b,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7237 msgid "" "Integration of f by Composite Simpson's Rule on the interval [a,b] with n " "subintervals with error of max(f'''')*h^4*(b-a)/180, note that n should be " "even." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7238 C/genius.xml:7250 msgid "" "See Planetmath for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7246 msgid "" "CompositeSimpsonsRuleTolerance" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7248 #, no-wrap msgid "CompositeSimpsonsRuleTolerance (f,a,b,FourthDerivativeBound,Tolerance)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7249 msgid "" "Integration of f by Composite Simpson's Rule on the interval [a,b] with the " "number of steps calculated by the fourth derivative bound and the desired " "tolerance." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7258 msgid "Derivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7260 #, no-wrap msgid "Derivative (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7261 msgid "" "Attempt to calculate derivative by trying first symbolically and then " "numerically." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7262 C/genius.xml:7394 C/genius.xml:8808 C/genius.xml:8822 #: C/genius.xml:8836 C/genius.xml:8850 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7270 msgid "" "EvenPeriodicExtension" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7272 #, no-wrap msgid "EvenPeriodicExtension (f,L)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7273 msgid "" "Return a function that is the even periodic extension of f with half period L. That is a function defined " "on the interval [0,L] extended to be even on " "[-L,L] and then extended to be periodic with period " "2*L." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7278 msgid "" "See also OddPeriodicExtension and PeriodicExtension." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7289 msgid "" "FourierSeriesFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7291 #, no-wrap msgid "FourierSeriesFunction (a,b,L)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7292 msgid "" "Return a function that is a Fourier series with the coefficients given by " "the vectors a (sines) and b (cosines). " "Note that a@(1) is the constant coefficient! That is, " "a@(n) refers to the term cos(x*(n-1)*pi/" "L), while b@(n) refers to the term " "sin(x*n*pi/L). Either a or " "b can be null." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7300 C/genius.xml:7414 C/genius.xml:7434 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7309 msgid "InfiniteProduct" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7311 #, no-wrap msgid "InfiniteProduct (func,start,inc)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7312 msgid "Try to calculate an infinite product for a single parameter function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7317 msgid "InfiniteProduct2" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7319 #, no-wrap msgid "InfiniteProduct2 (func,arg,start,inc)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7320 msgid "" "Try to calculate an infinite product for a double parameter function with " "func(arg,n)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7325 msgid "InfiniteSum" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7327 #, no-wrap msgid "InfiniteSum (func,start,inc)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7328 msgid "Try to calculate an infinite sum for a single parameter function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7333 msgid "InfiniteSum2" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7335 #, no-wrap msgid "InfiniteSum2 (func,arg,start,inc)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7336 msgid "" "Try to calculate an infinite sum for a double parameter function with " "func(arg,n)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7341 msgid "IsContinuous" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7343 #, no-wrap msgid "IsContinuous (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7344 msgid "" "Try and see if a real-valued function is continuous at x0 by calculating the " "limit there." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7349 msgid "IsDifferentiable" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7351 #, no-wrap msgid "IsDifferentiable (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7352 msgid "" "Test for differentiability by approximating the left and right limits and " "comparing." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7357 msgid "LeftHandRule" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7359 #, no-wrap msgid "LeftHandRule (f,a,b,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7360 msgid "" "Integration by left hand rule on the interval [a,b] with n subintervals." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7365 msgid "LeftLimit" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7367 #, no-wrap msgid "LeftLimit (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7368 msgid "Calculate the left limit of a real-valued function at x0." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7373 msgid "Limit" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7375 #, no-wrap msgid "Limit (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7376 msgid "" "Calculate the limit of a real-valued function at x0. Tries to calculate both " "left and right limits." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7381 msgid "MidpointRule" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7383 #, no-wrap msgid "MidpointRule (f,a,b,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7384 msgid "Integration by midpoint rule on the interval [a,b] with n subintervals." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7389 msgid "NumericalDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7391 #, no-wrap msgid "NumericalDerivative (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7392 msgid "Aliases: NDerivative" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7393 msgid "Attempt to calculate numerical derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7402 msgid "" "NumericalFourierSeriesCoefficients" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7404 #, no-wrap msgid "NumericalFourierSeriesCoefficients (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7405 msgid "" "Return a vector of vectors [a,b] where a are the cosine coefficients and b are the sine " "coefficients of the Fourier series of f with half-" "period L (that is defined on [-L,L] and extended periodically) with coefficients up to Nth harmonic computed numerically. The coefficients are computed by " "numerical integration using NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7424 msgid "" "NumericalFourierSeriesFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7426 #, no-wrap msgid "NumericalFourierSeriesFunction (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7427 msgid "" "Return a function that is the Fourier series of f with " "half-period L (that is defined on [-L,L] and extended periodically) with coefficients up to Nth harmonic computed numerically. This is the trigonometric real " "series composed of sines and cosines. The coefficients are computed by " "numerical integration using NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7444 msgid "" "NumericalFourierCosineSeriesCoefficients" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7446 #, no-wrap msgid "NumericalFourierCosineSeriesCoefficients (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7447 msgid "" "Return a vector of coefficients of the cosine Fourier series of f with half-period L. That is, we take " "f defined on [0,L] take the even " "periodic extension and compute the Fourier series, which only has cosine " "terms. The series is computed up to the Nth harmonic. The " "coefficients are computed by numerical integration using NumericalIntegral. " "Note that a@(1) is the constant coefficient! That is, " "a@(n) refers to the term cos(x*(n-1)*pi/" "L)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7459 C/genius.xml:7480 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7469 msgid "" "NumericalFourierCosineSeriesFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7471 #, no-wrap msgid "NumericalFourierCosineSeriesFunction (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7472 msgid "" "Return a function that is the cosine Fourier series of f with half-period L. That is, we take " "f defined on [0,L] take the even " "periodic extension and compute the Fourier series, which only has cosine " "terms. The series is computed up to the Nth harmonic. The " "coefficients are computed by numerical integration using NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7490 msgid "" "NumericalFourierSineSeriesCoefficients" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7492 #, no-wrap msgid "NumericalFourierSineSeriesCoefficients (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7493 msgid "" "Return a vector of coefficients of the sine Fourier series of f with half-period L. That is, we take " "f defined on [0,L] take the odd " "periodic extension and compute the Fourier series, which only has sine " "terms. The series is computed up to the Nth harmonic. The " "coefficients are computed by numerical integration using NumericalIntegral." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7502 C/genius.xml:7523 msgid "" "See Wikipedia or Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7512 msgid "" "NumericalFourierSineSeriesFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7514 #, no-wrap msgid "NumericalFourierSineSeriesFunction (f,L,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7515 msgid "" "Return a function that is the sine Fourier series of f " "with half-period L. That is, we take f defined on [0,L] take the odd periodic " "extension and compute the Fourier series, which only has sine terms. The " "series is computed up to the Nth harmonic. The " "coefficients are computed by numerical integration using NumericalIntegral." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7533 msgid "NumericalIntegral" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7535 #, no-wrap msgid "NumericalIntegral (f,a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7536 msgid "" "Integration by rule set in NumericalIntegralFunction of f from a to b using " "NumericalIntegralSteps steps. By default NumericalIntegralFunction is the " "CompositeSimpsonsRule." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7542 msgid "" "NumericalLeftDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7544 #, no-wrap msgid "NumericalLeftDerivative (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7545 msgid "Attempt to calculate numerical left derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7550 msgid "" "NumericalLimitAtInfinity" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7552 #, no-wrap msgid "NumericalLimitAtInfinity (_f,step_fun,tolerance,successive_for_success,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7553 msgid "Attempt to calculate the limit of f(step_fun(i)) as i goes from 1 to N." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7558 msgid "" "NumericalRightDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7560 #, no-wrap msgid "NumericalRightDerivative (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7561 msgid "Attempt to calculate numerical right derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7566 msgid "OddPeriodicExtension" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7568 #, no-wrap msgid "OddPeriodicExtension (f,L)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7569 msgid "" "Return a function that is the odd periodic extension of f with half period L. That is a function defined " "on the interval [0,L] extended to be odd on " "[-L,L] and then extended to be periodic with period " "2*L." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7574 msgid "" "See also EvenPeriodicExtension and PeriodicExtension." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7585 msgid "" "OneSidedFivePointFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7587 #, no-wrap msgid "OneSidedFivePointFormula (f,x0,h)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7588 msgid "Compute one-sided derivative using five point formula." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7593 msgid "" "OneSidedThreePointFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7595 #, no-wrap msgid "OneSidedThreePointFormula (f,x0,h)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7596 msgid "Compute one-sided derivative using three-point formula." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7601 msgid "PeriodicExtension" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7603 #, no-wrap msgid "PeriodicExtension (f,a,b)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7604 msgid "" "Return a function that is the periodic extension of f " "defined on the interval [a,b] and has period " "b-a." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7607 msgid "" "See also OddPeriodicExtension and EvenPeriodicExtension." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7618 msgid "RightHandRule" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7620 #, no-wrap msgid "RightHandRule (f,a,b,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7621 msgid "" "Integration by right hand rule on the interval [a,b] with n subintervals." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7626 msgid "RightLimit" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7628 #, no-wrap msgid "RightLimit (f,x0)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7629 msgid "Calculate the right limit of a real-valued function at x0." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7634 msgid "TrapezoidRule" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7636 #, no-wrap msgid "TrapezoidRule (f,a,b,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7637 msgid "" "Integration by trapezoid rule on the interval [a,b] with n subintervals." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7642 msgid "" "TwoSidedFivePointFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7644 #, no-wrap msgid "TwoSidedFivePointFormula (f,x0,h)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7645 msgid "Compute two-sided derivative using five-point formula." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7650 msgid "" "TwoSidedThreePointFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7652 #, no-wrap msgid "TwoSidedThreePointFormula (f,x0,h)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7653 msgid "Compute two-sided derivative using three-point formula." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:7661 msgid "Functions" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7664 msgid "Argument" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7666 #, no-wrap msgid "Argument (z)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7667 msgid "Aliases: Arg arg" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7668 msgid "argument (angle) of complex number." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7673 msgid "BesselJ0" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7675 #, no-wrap msgid "BesselJ0 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7676 msgid "" "Bessel function of the first kind of order 0. Only implemented for real " "numbers." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7677 C/genius.xml:7690 C/genius.xml:7703 C/genius.xml:7716 #: C/genius.xml:7729 C/genius.xml:7742 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7686 msgid "BesselJ1" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7688 #, no-wrap msgid "BesselJ1 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7689 msgid "" "Bessel function of the first kind of order 1. Only implemented for real " "numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7699 msgid "BesselJn" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7701 #, no-wrap msgid "BesselJn (n,x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7702 msgid "" "Bessel function of the first kind of order n. Only " "implemented for real numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7712 msgid "BesselY0" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7714 #, no-wrap msgid "BesselY0 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7715 msgid "" "Bessel function of the second kind of order 0. Only implemented for real " "numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7725 msgid "BesselY1" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7727 #, no-wrap msgid "BesselY1 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7728 msgid "" "Bessel function of the second kind of order 1. Only implemented for real " "numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7738 msgid "BesselYn" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7740 #, no-wrap msgid "BesselYn (n,x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7741 msgid "" "Bessel function of the second kind of order n. Only " "implemented for real numbers." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7751 msgid "DirichletKernel" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7753 #, no-wrap msgid "DirichletKernel (n,t)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7754 msgid "Dirichlet kernel of order n." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7759 msgid "DiscreteDelta" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7761 #, no-wrap msgid "DiscreteDelta (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7762 msgid "Returns 1 if and only if all elements are zero." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7767 msgid "ErrorFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7769 #, no-wrap msgid "ErrorFunction (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7770 msgid "Aliases: erf" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7771 msgid "The error function, 2/sqrt(pi) * int_0^x e^(-t^2) dt." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7772 msgid "" "See Wikipedia or Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7781 msgid "FejerKernel" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7783 #, no-wrap msgid "FejerKernel (n,t)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7784 msgid "" "Fejer kernel of order n evaluated at t" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7786 msgid "" "See Planetmath for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7794 msgid "GammaFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7796 #, no-wrap msgid "GammaFunction (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7797 msgid "Aliases: Gamma" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7798 msgid "The Gamma function. Currently only implemented for real values." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7799 msgid "" "See Planetmath or " "Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7808 msgid "KroneckerDelta" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7810 #, no-wrap msgid "KroneckerDelta (v)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7811 msgid "Returns 1 if and only if all elements are equal." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7816 msgid "LambertW" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7818 #, no-wrap msgid "LambertW (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7819 msgid "" "The principal branch of Lambert W function computed for only real values " "greater than or equal to -1/e. That is, " "LambertW is the inverse of the expression " "x*e^x. Even for real x this " "expression is not one to one and therefore has two branches over " "[-1/e,0). See LambertWm1 for the other real " "branch." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7828 C/genius.xml:7848 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7837 msgid "LambertWm1" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7839 #, no-wrap msgid "LambertWm1 (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7840 msgid "" "The minus-one branch of Lambert W function computed for only real values " "greater than or equal to -1/e and less than 0. That " "is, LambertWm1 is the second branch of the inverse of " "x*e^x. See LambertW for the principal branch." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7856 msgid "MinimizeFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7858 #, no-wrap msgid "MinimizeFunction (func,x,incr)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7859 msgid "Find the first value where f(x)=0." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7864 msgid "MoebiusDiskMapping" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7866 #, no-wrap msgid "MoebiusDiskMapping (a,z)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7867 msgid "Moebius mapping of the disk to itself mapping a to 0." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7868 C/genius.xml:7881 C/genius.xml:7894 C/genius.xml:7907 #: C/genius.xml:7920 msgid "" "See Wikipedia or Planetmath for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7877 msgid "MoebiusMapping" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7879 #, no-wrap msgid "MoebiusMapping (z,z2,z3,z4)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7880 msgid "" "Moebius mapping using the cross ratio taking z2,z3,z4 to 1,0, and infinity " "respectively." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7890 msgid "" "MoebiusMappingInftyToInfty" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7892 #, no-wrap msgid "MoebiusMappingInftyToInfty (z,z2,z3)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7893 msgid "" "Moebius mapping using the cross ratio taking infinity to infinity and z2,z3 " "to 1 and 0 respectively." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7903 msgid "" "MoebiusMappingInftyToOne" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7905 #, no-wrap msgid "MoebiusMappingInftyToOne (z,z3,z4)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7906 msgid "" "Moebius mapping using the cross ratio taking infinity to 1 and z3,z4 to 0 " "and infinity respectively." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7916 msgid "" "MoebiusMappingInftyToZero" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7918 #, no-wrap msgid "MoebiusMappingInftyToZero (z,z2,z4)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7919 msgid "" "Moebius mapping using the cross ratio taking infinity to 0 and z2,z4 to 1 " "and infinity respectively." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7929 msgid "PoissonKernel" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7931 #, no-wrap msgid "PoissonKernel (r,sigma)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7932 msgid "" "Poisson kernel on D(0,1) (not normalized to 1, that is integral of this is " "2pi)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7937 msgid "PoissonKernelRadius" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7939 #, no-wrap msgid "PoissonKernelRadius (r,sigma)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7940 msgid "Poisson kernel on D(0,R) (not normalized to 1)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7945 msgid "RiemannZeta" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7947 #, no-wrap msgid "RiemannZeta (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7948 msgid "Aliases: zeta" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7949 msgid "The Riemann zeta function. Currently only implemented for real values." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7950 msgid "" "See Planetmath or Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7959 msgid "UnitStep" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7961 #, no-wrap msgid "UnitStep (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7962 msgid "" "The unit step function is 0 for x<0, 1 otherwise. This is the integral of " "the Dirac Delta function. Also called the Heaviside function." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7963 msgid "" "See Wikipedia " "for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7971 msgid "cis" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7973 #, no-wrap msgid "cis (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7974 msgid "" "The cis function, that is the same as cos(x)" "+1i*sin(x)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7982 msgid "deg2rad" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7984 #, no-wrap msgid "deg2rad (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7985 msgid "Convert degrees to radians." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7990 msgid "rad2deg" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:7992 #, no-wrap msgid "rad2deg (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:7993 msgid "Convert radians to degrees." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:7998 msgid "sinc" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8000 #, no-wrap msgid "sinc (x)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8001 msgid "" "Calculates the unnormalized sinc function, that is sin(x)/x. If you want the normalized function call sinc(pi*x)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8004 msgid "" "See Wikipedia for " "more information." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8016 msgid "Equation Solving" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8020 msgid "CubicFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8022 #, no-wrap msgid "CubicFormula (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8023 msgid "" "Compute roots of a cubic (degree 3) polynomial using the cubic formula. The " "polynomial should be given as a vector of coefficients. That is " "4*x^3 + 2*x + 1 corresponds to the vector " "[1,2,0,4]. Returns a column vector of the three " "solutions. The first solution is always the real one as a cubic always has " "one real solution." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8032 msgid "" "See Planetmath, " "Mathworld, or Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8042 msgid "EulersMethod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8044 #, no-wrap msgid "EulersMethod (f,x0,y0,x1,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8045 msgid "" "Use classical Euler's method to numerically solve y'=f(x,y) for initial " "x0, y0 going to x1 " "with n increments, returns y at " "x1. Unless you explicitly want to use Euler's method, you " "should really think about using RungeKutta for solving ODE." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8055 C/genius.xml:8096 C/genius.xml:8301 C/genius.xml:8339 msgid "" "Systems can be solved by just having y be a (column) " "vector everywhere. That is, y0 can be a vector in which " "case f should take a number x and a " "vector of the same size for the second argument and should return a vector " "of the same size." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8062 C/genius.xml:8118 msgid "" "See Mathworld or Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8071 msgid "EulersMethodFull" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8073 #, no-wrap msgid "EulersMethodFull (f,x0,y0,x1,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8074 msgid "" "Use classical Euler's method to numerically solve y'=f(x,y) for initial " "x0, y0 going to x1 " "with n increments, returns an n+1 " "by 2 matrix with the x and y values. " "Unless you explicitly want to use Euler's method, you should really think " "about using RungeKuttaFull for solving ODE. Suitable for plugging into LinePlotDrawLine or LinePlotDrawPoints." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8091 #, no-wrap msgid "" "genius> LinePlotClear();\n" "genius> line = EulersMethodFull(`(x,y)=y,0,1.0,3.0,50);\n" "genius> LinePlotDrawLine(line,\"window\",\"fit\",\"color\",\"blue\",\"legend\",\"Exponential growth\");\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8089 C/genius.xml:8332 C/genius.xml:8715 C/genius.xml:8755 msgid "Example: <_:screen-1/>" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8108 #, no-wrap msgid "" "genius> LinePlotClear();\n" "genius> lines = EulersMethodFull(`(x,y)=[y@(2),-y@(1)],0,[1.0,1.0],10.0,500);\n" "genius> lines = ExpandMatrix(lines);\n" "genius> firstline = lines@(,[1,2]);\n" "genius> secondline = lines@(,[1,3]);\n" "genius> LinePlotWindow = [0,10,-2,2];\n" "genius> LinePlotDrawLine(firstline,\"color\",\"blue\",\"legend\",\"First\");\n" "genius> LinePlotDrawPoints(secondline,\"color\",\"red\",\"thickness\",3,\"legend\",\"Second\");\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8103 C/genius.xml:8346 msgid "" "The output for a system is still a n by 2 matrix with the second entry being " "a vector. If you wish to plot the line, make sure to use row vectors, and " "then flatten the matrix with ExpandMatrix, and pick out the right columns. Example: " "<_:screen-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8128 msgid "FindRootBisection" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8130 #, no-wrap msgid "FindRootBisection (f,a,b,TOL,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8131 msgid "" "Find root of a function using the bisection method. a and " "b are the initial guess interval, f(a) and f(b) should have opposite signs. " "TOL is the desired tolerance and N is " "the limit on the number of iterations to run, 0 means no limit. The function " "returns a vector [success,value,iteration], where " "success is a boolean indicating success, value is the last value computed, and iteration is the " "number of iterations done." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8140 msgid "" "FindRootFalsePosition" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8142 #, no-wrap msgid "FindRootFalsePosition (f,a,b,TOL,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8143 msgid "" "Find root of a function using the method of false position. a and b are the initial guess interval, " "f(a) and f(b) should have " "opposite signs. TOL is the desired tolerance and " "N is the limit on the number of iterations to run, 0 " "means no limit. The function returns a vector " "[success,value,iteration], where success is a boolean indicating success, value is the " "last value computed, and iteration is the number of " "iterations done." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8152 msgid "" "FindRootMullersMethod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8154 #, no-wrap msgid "FindRootMullersMethod (f,x0,x1,x2,TOL,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8155 msgid "" "Find root of a function using the Muller's method. TOL is " "the desired tolerance and N is the limit on the number of " "iterations to run, 0 means no limit. The function returns a vector " "[success,value,iteration], where success is a boolean indicating success, value is the " "last value computed, and iteration is the number of " "iterations done." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8162 msgid "FindRootSecant" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8164 #, no-wrap msgid "FindRootSecant (f,a,b,TOL,N)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8165 msgid "" "Find root of a function using the secant method. a and " "b are the initial guess interval, f(a) and f(b) should have opposite signs. " "TOL is the desired tolerance and N is " "the limit on the number of iterations to run, 0 means no limit. The function " "returns a vector [success,value,iteration], where " "success is a boolean indicating success, value is the last value computed, and iteration is the " "number of iterations done." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8174 msgid "HalleysMethod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8176 #, no-wrap msgid "HalleysMethod (f,df,ddf,guess,epsilon,maxn)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8177 msgid "" "Find zeros using Halley's method. f is the function, " "df is the derivative of f, and " "ddf is the second derivative of f. " "guess is the initial guess. The function returns after " "two successive values are within epsilon of each other, " "or after maxn tries, in which case the function returns " "null indicating failure." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8184 msgid "" "See also NewtonsMethod and SymbolicDerivative." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8189 #, no-wrap msgid "genius> HalleysMethod(`(x)=x^2-10,`(x)=2*x,`(x)=2,3,10^-10,100)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8187 C/genius.xml:8213 C/genius.xml:8555 msgid "Example to find the square root of 10: <_:screen-1/>" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8192 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8201 msgid "NewtonsMethod" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8203 #, no-wrap msgid "NewtonsMethod (f,df,guess,epsilon,maxn)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8204 msgid "" "Find zeros using Newton's method. f is the function and " "df is the derivative of f. " "guess is the initial guess. The function returns after " "two successive values are within epsilon of each other, " "or after maxn tries, in which case the function returns " "null indicating failure." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8210 msgid "" "See also NewtonsMethodPoly and SymbolicDerivative." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8215 #, no-wrap msgid "genius> NewtonsMethod(`(x)=x^2-10,`(x)=2*x,3,10^-10,100)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8218 C/genius.xml:8560 msgid "" "See Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8227 msgid "PolynomialRoots" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8229 #, no-wrap msgid "PolynomialRoots (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8230 msgid "" "Compute roots of a polynomial (degrees 1 through 4) using one of the " "formulas for such polynomials. The polynomial should be given as a vector of " "coefficients. That is 4*x^3 + 2*x + 1 corresponds to " "the vector [1,2,0,4]. Returns a column vector of the " "solutions." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8239 msgid "" "The function calls QuadraticFormula, CubicFormula, and QuarticFormula." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8249 msgid "QuadraticFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8251 #, no-wrap msgid "QuadraticFormula (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8252 msgid "" "Compute roots of a quadratic (degree 2) polynomial using the quadratic " "formula. The polynomial should be given as a vector of coefficients. That is " "3*x^2 + 2*x + 1 corresponds to the vector " "[1,2,3]. Returns a column vector of the two solutions." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8260 msgid "" "See Planetmath, or Mathworld, or Wikipedia for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8270 msgid "QuarticFormula" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8272 #, no-wrap msgid "QuarticFormula (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8273 msgid "" "Compute roots of a quartic (degree 4) polynomial using the quartic formula. " "The polynomial should be given as a vector of coefficients. That is " "5*x^4 + 2*x + 1 corresponds to the vector " "[1,2,0,0,5]. Returns a column vector of the four " "solutions." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8281 msgid "" "See Planetmath, " "Mathworld, or Wikipedia for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8291 msgid "RungeKutta" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8293 #, no-wrap msgid "RungeKutta (f,x0,y0,x1,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8294 msgid "" "Use classical non-adaptive fourth order Runge-Kutta method to numerically " "solve y'=f(x,y) for initial x0, y0 " "going to x1 with n increments, returns " "y at x1." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8308 C/genius.xml:8361 msgid "" "See Mathworld or Wikipedia for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8317 msgid "RungeKuttaFull" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8319 #, no-wrap msgid "RungeKuttaFull (f,x0,y0,x1,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8320 msgid "" "Use classical non-adaptive fourth order Runge-Kutta method to numerically " "solve y'=f(x,y) for initial x0, y0 " "going to x1 with n increments, returns " "an n+1 by 2 matrix with the x and " "y values. Suitable for plugging into LinePlotDrawLine or LinePlotDrawPoints." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8334 #, no-wrap msgid "" "genius> LinePlotClear();\n" "genius> line = RungeKuttaFull(`(x,y)=y,0,1.0,3.0,50);\n" "genius> LinePlotDrawLine(line,\"window\",\"fit\",\"color\",\"blue\",\"legend\",\"Exponential growth\");\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8351 #, no-wrap msgid "" "genius> LinePlotClear();\n" "genius> lines = RungeKuttaFull(`(x,y)=[y@(2),-y@(1)],0,[1.0,1.0],10.0,100);\n" "genius> lines = ExpandMatrix(lines);\n" "genius> firstline = lines@(,[1,2]);\n" "genius> secondline = lines@(,[1,3]);\n" "genius> LinePlotWindow = [0,10,-2,2];\n" "genius> LinePlotDrawLine(firstline,\"color\",\"blue\",\"legend\",\"First\");\n" "genius> LinePlotDrawPoints(secondline,\"color\",\"red\",\"thickness\",3,\"legend\",\"Second\");\n" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8375 msgid "Statistics" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8378 msgid "Average" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8380 #, no-wrap msgid "Average (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8381 msgid "" "Aliases: average Mean " "mean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8382 msgid "Calculate average (the arithmetic mean) of an entire matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8383 C/genius.xml:8448 msgid "" "See Wikipedia or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8392 msgid "GaussDistribution" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8394 #, no-wrap msgid "GaussDistribution (x,sigma)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8395 msgid "" "Integral of the GaussFunction from 0 to x (area under the " "normal curve)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8396 C/genius.xml:8409 msgid "" "See Wikipedia or Mathworld for more " "information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8405 msgid "GaussFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8407 #, no-wrap msgid "GaussFunction (x,sigma)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8408 msgid "The normalized Gauss distribution function (the normal curve)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8419 msgid "Median" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8421 #, no-wrap msgid "Median (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8422 msgid "Aliases: median" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8423 msgid "Calculate median of an entire matrix." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8424 C/genius.xml:8462 msgid "" "See Wikipedia or " "Mathworld for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8433 msgid "" "PopulationStandardDeviation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8435 #, no-wrap msgid "PopulationStandardDeviation (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8436 msgid "Aliases: stdevp" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8437 msgid "Calculate the population standard deviation of a whole matrix." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8442 msgid "RowAverage" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8444 #, no-wrap msgid "RowAverage (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8445 msgid "Aliases: RowMean" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8446 msgid "" "Calculate average of each row in a matrix. That is, compute the arithmetic " "mean." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8457 msgid "RowMedian" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8459 #, no-wrap msgid "RowMedian (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8460 msgid "" "Calculate median of each row in a matrix and return a column vector of the " "medians." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8471 msgid "" "RowPopulationStandardDeviation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8473 #, no-wrap msgid "RowPopulationStandardDeviation (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8474 msgid "Aliases: rowstdevp" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8475 msgid "" "Calculate the population standard deviations of rows of a matrix and return " "a vertical vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8480 msgid "RowStandardDeviation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8482 #, no-wrap msgid "RowStandardDeviation (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8483 msgid "Aliases: rowstdev" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8484 msgid "" "Calculate the standard deviations of rows of a matrix and return a vertical " "vector." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8489 msgid "StandardDeviation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8491 #, no-wrap msgid "StandardDeviation (m)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8492 msgid "Aliases: stdev" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8493 msgid "Calculate the standard deviation of a whole matrix." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8501 msgid "Polynomials" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8504 msgid "AddPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8506 #, no-wrap msgid "AddPoly (p1,p2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8507 msgid "Add two polynomials (vectors)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8512 msgid "DividePoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8514 #, no-wrap msgid "DividePoly (p,q,&r)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8515 msgid "" "Divide two polynomials (as vectors) using long division. Returns the " "quotient of the two polynomials. The optional argument r " "is used to return the remainder. The remainder will have lower degree than " "q." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8520 msgid "" "See Planetmath for more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8528 msgid "IsPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8530 #, no-wrap msgid "IsPoly (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8531 msgid "Check if a vector is usable as a polynomial." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8536 msgid "MultiplyPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8538 #, no-wrap msgid "MultiplyPoly (p1,p2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8539 msgid "Multiply two polynomials (as vectors)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8544 msgid "NewtonsMethodPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8546 #, no-wrap msgid "NewtonsMethodPoly (poly,guess,epsilon,maxn)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8547 msgid "" "Find a root of a polynomial using Newton's method. poly " "is the polynomial as a vector and guess is the initial " "guess. The function returns after two successive values are within " "epsilon of each other, or after maxn " "tries, in which case the function returns null " "indicating failure." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8552 msgid "" "See also NewtonsMethod." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8557 #, no-wrap msgid "genius> NewtonsMethodPoly([-10,0,1],3,10^-10,100)\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8568 msgid "Poly2ndDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8570 #, no-wrap msgid "Poly2ndDerivative (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8571 msgid "Take second polynomial (as vector) derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8576 msgid "PolyDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8578 #, no-wrap msgid "PolyDerivative (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8579 msgid "Take polynomial (as vector) derivative." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8584 msgid "PolyToFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8586 #, no-wrap msgid "PolyToFunction (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8587 msgid "Make function out of a polynomial (as vector)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8592 msgid "PolyToString" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8594 #, no-wrap msgid "PolyToString (p,var...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8595 msgid "Make string out of a polynomial (as vector)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8600 msgid "SubtractPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8602 #, no-wrap msgid "SubtractPoly (p1,p2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8603 msgid "Subtract two polynomials (as vectors)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8608 msgid "TrimPoly" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8610 #, no-wrap msgid "TrimPoly (p)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8611 msgid "Trim zeros from a polynomial (as vector)." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8619 msgid "Set Theory" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8622 msgid "Intersection" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8624 #, no-wrap msgid "Intersection (X,Y)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8625 msgid "" "Returns a set theoretic intersection of X and Y (X and Y are vectors " "pretending to be sets)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8630 msgid "IsIn" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8632 #, no-wrap msgid "IsIn (x,X)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8633 msgid "" "Returns true if the element x is in the set X (where X " "is a vector pretending to be a set)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8638 msgid "IsSubset" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8640 #, no-wrap msgid "IsSubset (X, Y)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8641 msgid "" "Returns true if X is a subset of Y (X and Y are vectors " "pretending to be sets)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8646 msgid "MakeSet" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8648 #, no-wrap msgid "MakeSet (X)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8649 msgid "Returns a vector where every element of X appears only once." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8654 msgid "SetMinus" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8656 #, no-wrap msgid "SetMinus (X,Y)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8657 msgid "" "Returns a set theoretic difference X-Y (X and Y are vectors pretending to be " "sets)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8662 msgid "Union" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8664 #, no-wrap msgid "Union (X,Y)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8665 msgid "" "Returns a set theoretic union of X and Y (X and Y are vectors pretending to " "be sets)." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8673 msgid "Commutative Algebra" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8676 msgid "MacaulayBound" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8678 #, no-wrap msgid "MacaulayBound (c,d)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8679 msgid "" "For a Hilbert function that is c for degree d, given the Macaulay bound for " "the Hilbert function of degree d+1 (The c^<d> operator from Green's " "proof)." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8685 msgid "" "MacaulayLowerOperator" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8687 #, no-wrap msgid "MacaulayLowerOperator (c,d)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8688 msgid "The c_<d> operator from Green's proof of Macaulay's Theorem." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8694 msgid "MacaulayRep" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8696 #, no-wrap msgid "MacaulayRep (c,d)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8697 msgid "Return the dth Macaulay representation of a positive integer c." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8705 msgid "Miscellaneous" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8708 msgid "ASCIIToString" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8710 #, no-wrap msgid "ASCIIToString (vec)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8711 msgid "" "Convert a vector of ASCII values to a string. See also StringToASCII." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8717 #, no-wrap msgid "" "genius> ASCIIToString([97,98,99])\n" "= \"abc\"\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8721 C/genius.xml:8761 msgid "" "See Wikipedia for " "more information." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8729 msgid "AlphabetToString" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8731 #, no-wrap msgid "AlphabetToString (vec,alphabet)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8732 msgid "" "Convert a vector of 0-based alphabet values (positions in the alphabet " "string) to a string. A null vector results in an empty " "string. See also StringToAlphabet." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8738 #, no-wrap msgid "" "genius> AlphabetToString([1,2,3,0,0],\"abcd\")\n" "= \"bcdaa\"\n" "genius> AlphabetToString(null,\"abcd\")\n" "= \"\"\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8736 C/genius.xml:8778 C/genius.xml:8800 C/genius.xml:8891 #: C/genius.xml:8925 C/genius.xml:9031 C/genius.xml:9099 C/genius.xml:9286 #: C/genius.xml:9313 C/genius.xml:9360 C/genius.xml:9405 C/genius.xml:9461 #: C/genius.xml:9515 C/genius.xml:9589 msgid "Examples: <_:screen-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8748 msgid "StringToASCII" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8750 #, no-wrap msgid "StringToASCII (str)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8751 msgid "" "Convert a string to a (row) vector of ASCII values. See also ASCIIToString." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8757 #, no-wrap msgid "" "genius> StringToASCII(\"abc\")\n" "= [97, 98, 99]\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8769 msgid "StringToAlphabet" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8771 #, no-wrap msgid "StringToAlphabet (str,alphabet)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8772 msgid "" "Convert a string to a (row) vector of 0-based alphabet values (positions in " "the alphabet string), -1's for unknown letters. An empty string results in a " "null. See also AlphabetToString." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8780 #, no-wrap msgid "" "genius> StringToAlphabet(\"cca\",\"abcd\")\n" "= [2, 2, 0]\n" "genius> StringToAlphabet(\"ccag\",\"abcd\")\n" "= [2, 2, 0, -1]\n" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:8793 msgid "Symbolic Operations" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8796 msgid "SymbolicDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8798 #, no-wrap msgid "SymbolicDerivative (f)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8799 msgid "" "Attempt to symbolically differentiate the function f, where f is a function " "of one variable." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8802 #, no-wrap msgid "" "genius> SymbolicDerivative(sin)\n" "= (`(x)=cos(x))\n" "genius> SymbolicDerivative(`(x)=7*x^2)\n" "= (`(x)=(7*(2*x)))\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8816 msgid "" "SymbolicDerivativeTry" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8818 #, no-wrap msgid "SymbolicDerivativeTry (f)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8819 msgid "" "Attempt to symbolically differentiate the function f, where f is a function " "of one variable, returns null if unsuccessful but is " "silent. (See SymbolicDerivative)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8830 msgid "" "SymbolicNthDerivative" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8832 #, no-wrap msgid "SymbolicNthDerivative (f,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8833 msgid "" "Attempt to symbolically differentiate a function n times. (See SymbolicDerivative)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8844 msgid "" "SymbolicNthDerivativeTry" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8846 #, no-wrap msgid "SymbolicNthDerivativeTry (f,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8847 msgid "" "Attempt to symbolically differentiate a function n times quietly and return " "null on failure (See SymbolicNthDerivative)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8858 msgid "" "SymbolicTaylorApproximationFunction" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8860 #, no-wrap msgid "SymbolicTaylorApproximationFunction (f,x0,n)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8861 msgid "" "Attempt to construct the Taylor approximation function around x0 to the nth " "degree. (See SymbolicDerivative)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8873 msgid "ExportPlot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8875 #, no-wrap msgid "ExportPlot (file,type)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8876 #, no-wrap msgid "ExportPlot (file)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8877 msgid "" "Export the contents of the plotting window to a file. The type is a string " "that specifies the file type to use, \"png\", \"eps\", or \"ps\". If the " "type is not specified, then it is taken to be the extension, in which case " "the extension must be \".png\", \".eps\", or \".ps\"." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8884 msgid "Note that files are overwritten without asking." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8887 msgid "" "On successful export, true is returned. Otherwise error is printed and " "exception is raised." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8893 #, no-wrap msgid "" "genius> ExportPlot(\"file.png\")\n" "genius> ExportPlot(\"/directory/file\",\"eps\")\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8902 msgid "LinePlot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8904 #, no-wrap msgid "LinePlot (func1,func2,func3,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8905 #, no-wrap msgid "LinePlot (func1,func2,func3,x1,x2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8906 #, no-wrap msgid "LinePlot (func1,func2,func3,x1,x2,y1,y2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8907 #, no-wrap msgid "LinePlot (func1,func2,func3,[x1,x2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8908 #, no-wrap msgid "LinePlot (func1,func2,func3,[x1,x2,y1,y2])" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8909 msgid "" "Plot a function (or several functions) with a line. First (up to 10) " "arguments are functions, then optionally you can specify the limits of the " "plotting window as x1, x2, " "y1, y2. If limits are not specified, " "then the currently set limits apply (See LinePlotWindow) If the y limits " "are not specified, then the functions are computed and then the maxima and " "minima are used." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8920 C/genius.xml:8964 C/genius.xml:9162 C/genius.xml:9281 #: C/genius.xml:9584 msgid "" "The parameter LinePlotDrawLegends " "controls the drawing of the legend." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:8927 #, no-wrap msgid "" "genius> LinePlot(sin,cos)\n" "genius> LinePlot(`(x)=x^2,-1,1,0,1)\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8935 msgid "LinePlotClear" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8937 #, no-wrap msgid "LinePlotClear ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8938 msgid "" "Show the line plot window and clear out functions and any other lines that " "were drawn." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8946 msgid "LinePlotCParametric" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8948 #, no-wrap msgid "LinePlotCParametric (func,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8949 #, no-wrap msgid "LinePlotCParametric (func,t1,t2,tinc)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8950 #, no-wrap msgid "LinePlotCParametric (func,t1,t2,tinc,x1,x2,y1,y2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8951 msgid "" "Plot a parametric complex valued function with a line. First comes the " "function that returns x+iy, then optionally " "the t limits as t1,t2,tinc, then " "optionally the limits as x1,x2,y1,y2." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8957 msgid "" "If limits are not specified, then the currently set limits apply (See LinePlotWindow). If instead the string \"fit\" is given for the x and y limits, then " "the limits are the maximum extent of the graph" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:8974 msgid "LinePlotDrawLine" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8976 #, no-wrap msgid "LinePlotDrawLine (x1,y1,x2,y2,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:8977 #, no-wrap msgid "LinePlotDrawLine (v,...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8978 msgid "" "Draw a line from x1,y1 to x2,y2. x1,y1, " "x2,y2 can be replaced by an " "n by 2 matrix for a longer polyline. Alternatively the " "vector v may be a column vector of complex numbers, that " "is an n by 1 matrix and each complex number is then " "considered a point in the plane." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8988 msgid "" "Extra parameters can be added to specify line color, thickness, arrows, the " "plotting window, or legend. You can do this by adding an argument string " "\"color\", \"thickness\", " "\"window\", \"arrow\", or " "\"legend\", and after it specify the color, the " "thickness, the window as 4-vector, type of arrow, or the legend. (Arrow and " "window are from version 1.0.6 onwards.)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:8998 msgid "" "If the line is to be treated as a filled polygon, filled with the given " "color, you can specify the argument \"filled\". Since " "version 1.0.22 onwards." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9002 C/genius.xml:9439 msgid "" "The color should be either a string indicating the common English word for " "the color that GTK will recognize such as \"red\", " "\"blue\", \"yellow\", etc... " "Alternatively the color can be specified in RGB format as " "\"#rgb\", \"#rrggbb\", or " "\"#rrrrggggbbbb\", where the r, g, or b are hex " "digits of the red, green, and blue components of the color. Finally, since " "version 1.0.18, the color can also be specified as a real vector specifying " "the red green and blue components where the components are between 0 and 1, " "e.g. [1.0,0.5,0.1]." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9013 C/genius.xml:9088 msgid "" "The window should be given as usual as [x1,x2,y1,y2], " "or alternatively can be given as a string \"fit\" in " "which case, the x range will be set precisely and the y range will be set " "with five percent borders around the line." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9020 msgid "" "Arrow specification should be \"origin\", " "\"end\", \"both\", or " "\"none\"." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9027 C/genius.xml:9095 C/genius.xml:9457 C/genius.xml:9511 msgid "" "Finally, legend should be a string that can be used as the legend in the " "graph. That is, if legends are being printed." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9033 #, no-wrap msgid "" "genius> LinePlotDrawLine(0,0,1,1,\"color\",\"blue\",\"thickness\",3)\n" "genius> LinePlotDrawLine([0,0;1,-1;-1,-1])\n" "genius> LinePlotDrawLine([0,0;1,1],\"arrow\",\"end\")\n" "genius> LinePlotDrawLine(RungeKuttaFull(`(x,y)=y,0,0.001,10,100),\"color\",\"blue\",\"legend\",\"The Solution\")\n" "genius> for r=0.0 to 1.0 by 0.1 do LinePlotDrawLine([0,0;1,r],\"color\",[r,(1-r),0.5],\"window\",[0,1,0,1])\n" "genius> LinePlotDrawLine([0,0;10,0;10,10;0,10],\"filled\",\"color\",\"green\")\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9041 msgid "" "Unlike many other functions that do not care if they take a column or a row " "vector, if specifying points as a vector of complex values, due to possible " "ambiguities, it must always be given as a column vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9047 msgid "" "Specifying v as a column vector of complex numbers is " "implemented from version 1.0.22 and onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9055 msgid "LinePlotDrawPoints" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9057 #, no-wrap msgid "LinePlotDrawPoints (x,y,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9058 #, no-wrap msgid "LinePlotDrawPoints (v,...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9059 msgid "" "Draw a point at x,y. The input can be " "an n by 2 matrix for n different " "points. This function has essentially the same input as LinePlotDrawLine. Alternatively the " "vector v may be a column vector of complex numbers, that " "is an n by 1 matrix and each complex number is then " "considered a point in the plane." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9068 msgid "" "Extra parameters can be added to specify color, thickness, the plotting " "window, or legend. You can do this by adding an argument string " "\"color\", \"thickness\", " "\"window\", or \"legend\", and " "after it specify the color, the thickness, the window as 4-vector, or the " "legend." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9078 C/genius.xml:9494 msgid "" "The color should be either a string indicating the common English word for " "the color that GTK will recognize such as \"red\", " "\"blue\", \"yellow\", etc... " "Alternatively the color can be specified in RGB format as " "\"#rgb\", \"#rrggbb\", or " "\"#rrrrggggbbbb\", where the r, g, or b are hex " "digits of the red, green, and blue components of the color. Finally the " "color can also be specified as a real vector specifying the red green and " "blue components where the components are between 0 and 1." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9101 #, no-wrap msgid "" "genius> LinePlotDrawPoints(0,0,\"color\",\"blue\",\"thickness\",3)\n" "genius> LinePlotDrawPoints([0,0;1,-1;-1,-1])\n" "genius> LinePlotDrawPoints(RungeKuttaFull(`(x,y)=y,0,0.001,10,100),\"color\",\"blue\",\"legend\",\"The Solution\")\n" "genius> LinePlotDrawPoints([1;1+1i;1i;0],\"thickness\",5)\n" "genius> LinePlotDrawPoints(ApplyOverMatrix((0:6)',`(k)=exp(k*2*pi*1i/7)),\"thickness\",3,\"legend\",\"The 7th roots of unity\")\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9108 msgid "" "Unlike many other functions that do not care if they take a column or a row " "vector, if specifying points as a vector of complex values, due to possible " "ambiguities, it must always be given as a column vector. Therefore, notice " "in the last example the transpose of the vector 0:6 " "to make it into a column vector." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9116 msgid "" "Available from version 1.0.18 onwards. Specifying v as a " "column vector of complex numbers is implemented from version 1.0.22 and " "onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9125 msgid "" "LinePlotMouseLocation" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9127 #, no-wrap msgid "LinePlotMouseLocation ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9128 msgid "" "Returns a row vector of a point on the line plot corresponding to the " "current mouse location. If the line plot is not visible, then prints an " "error and returns null. In this case you should run " "LinePlot " "or LinePlotClear to put the graphing window into the line plot mode. See " "also LinePlotWaitForClick." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9143 msgid "LinePlotParametric" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9145 #, no-wrap msgid "LinePlotParametric (xfunc,yfunc,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9146 #, no-wrap msgid "LinePlotParametric (xfunc,yfunc,t1,t2,tinc)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9147 #, no-wrap msgid "LinePlotParametric (xfunc,yfunc,t1,t2,tinc,x1,x2,y1,y2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9148 #, no-wrap msgid "LinePlotParametric (xfunc,yfunc,t1,t2,tinc,[x1,x2,y1,y2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9149 #, no-wrap msgid "LinePlotParametric (xfunc,yfunc,t1,t2,tinc,\"fit\")" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9150 msgid "" "Plot a parametric function with a line. First come the functions for " "x and y then optionally the " "t limits as t1,t2,tinc, then " "optionally the limits as x1,x2,y1,y2." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9155 msgid "" "If x and y limits are not specified, then the currently set limits apply " "(See LinePlotWindow). If instead the string \"fit\" is given for the x and y " "limits, then the limits are the maximum extent of the graph" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9171 msgid "LinePlotWaitForClick" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9173 #, no-wrap msgid "LinePlotWaitForClick ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9174 msgid "" "If in line plot mode, waits for a click on the line plot window and returns " "the location of the click as a row vector. If the window is closed the " "function returns immediately with null. If the window " "is not in line plot mode, it is put in it and shown if not shown. See also " "LinePlotMouseLocation." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9188 msgid "PlotCanvasFreeze" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9190 #, no-wrap msgid "PlotCanvasFreeze ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9191 msgid "" "Freeze drawing of the canvas plot temporarily. Useful if you need to draw a " "bunch of elements and want to delay drawing everything to avoid flicker in " "an animation. After everything has been drawn you should call PlotCanvasThaw." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9196 msgid "" "The canvas is always thawed after end of any execution, so it will never " "remain frozen. The moment a new command line is shown for example the plot " "canvas is thawed automatically. Also note that calls to freeze and thaw may " "be safely nested." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9206 msgid "PlotCanvasThaw" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9208 #, no-wrap msgid "PlotCanvasThaw ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9209 msgid "" "Thaw the plot canvas frozen by PlotCanvasFreeze and redraw " "the canvas immediately. The canvas is also always thawed after end of " "execution of any program." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9220 msgid "PlotWindowPresent" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9222 #, no-wrap msgid "PlotWindowPresent ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9223 msgid "" "Show and raise the plot window, creating it if necessary. Normally the " "window is created when one of the plotting functions is called, but it is " "not always raised if it happens to be below other windows. So this function " "is good to call in scripts where the plot window might have been created " "before, and by now is hidden behind the console or other windows." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9232 msgid "Version 1.0.19 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9237 msgid "" "SlopefieldClearSolutions" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9239 #, no-wrap msgid "SlopefieldClearSolutions ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9240 msgid "" "Clears the solutions drawn by the SlopefieldDrawSolution " "function." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9249 msgid "" "SlopefieldDrawSolution" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9251 #, no-wrap msgid "SlopefieldDrawSolution (x, y, dx)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9252 msgid "" "When a slope field plot is active, draw a solution with the specified " "initial condition. The standard Runge-Kutta method is used with increment " "dx. Solutions stay on the graph until a different plot is " "shown or until you call SlopefieldClearSolutions. You can also use the graphical interface to draw solutions and " "specify initial conditions with the mouse." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9266 msgid "SlopefieldPlot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9268 #, no-wrap msgid "SlopefieldPlot (func)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9269 #, no-wrap msgid "SlopefieldPlot (func,x1,x2,y1,y2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9270 msgid "" "Plot a slope field. The function func should take two " "real numbers x and y, or a single " "complex number. Optionally you can specify the limits of the plotting window " "as x1, x2, y1, " "y2. If limits are not specified, then the currently set " "limits apply (See LinePlotWindow)." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9288 #, no-wrap msgid "genius> SlopefieldPlot(`(x,y)=sin(x-y),-5,5,-5,5)\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9295 msgid "SurfacePlot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9297 #, no-wrap msgid "SurfacePlot (func)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9298 #, no-wrap msgid "SurfacePlot (func,x1,x2,y1,y2,z1,z2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9299 #, no-wrap msgid "SurfacePlot (func,x1,x2,y1,y2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9300 #, no-wrap msgid "SurfacePlot (func,[x1,x2,y1,y2,z1,z2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9301 #, no-wrap msgid "SurfacePlot (func,[x1,x2,y1,y2])" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9302 msgid "" "Plot a surface function that takes either two arguments or a complex number. " "First comes the function then optionally limits as x1, " "x2, y1, y2, " "z1, z2. If limits are not specified, " "then the currently set limits apply (See SurfacePlotWindow). Genius " "can only plot a single surface function at this time." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9310 msgid "" "If the z limits are not specified then the maxima and minima of the function " "are used." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9315 #, no-wrap msgid "" "genius> SurfacePlot(|sin|,-1,1,-1,1,0,1.5)\n" "genius> SurfacePlot(`(x,y)=x^2+y,-1,1,-1,1,-2,2)\n" "genius> SurfacePlot(`(z)=|z|^2,-1,1,-1,1,0,2)\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9324 msgid "SurfacePlotClear" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9326 #, no-wrap msgid "SurfacePlotClear ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9327 msgid "" "Show the surface plot window and clear out functions and any other lines " "that were drawn." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9331 msgid "Available in version 1.0.19 and onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9338 msgid "SurfacePlotData" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9340 #, no-wrap msgid "SurfacePlotData (data)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9341 #, no-wrap msgid "SurfacePlotData (data,label)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9342 #, no-wrap msgid "SurfacePlotData (data,x1,x2,y1,y2,z1,z2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9343 #, no-wrap msgid "SurfacePlotData (data,label,x1,x2,y1,y2,z1,z2)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9344 #, no-wrap msgid "SurfacePlotData (data,[x1,x2,y1,y2,z1,z2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9345 #, no-wrap msgid "SurfacePlotData (data,label,[x1,x2,y1,y2,z1,z2])" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9346 msgid "" "Plot a surface from data. The data is an n by 3 matrix whose rows are the x, " "y and z coordinates. The data can also be simply a vector whose length is a " "multiple of 3 and so contains the triples of x, y, z. The data should " "contain at least 3 points." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9353 msgid "" "Optionally we can give the label and also optionally the limits. If limits " "are not given, they are computed from the data, SurfacePlotWindow is not " "used, if you want to use it, pass it in explicitly. If label is not given " "then empty label is used." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9362 #, no-wrap msgid "" "genius> SurfacePlotData([0,0,0;1,0,1;0,1,1;1,1,3])\n" "genius> SurfacePlotData(data,\"My data\")\n" "genius> SurfacePlotData(data,-1,1,-1,1,0,10)\n" "genius> SurfacePlotData(data,SurfacePlotWindow)\n" msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9372 #, no-wrap msgid "" "genius> 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]];\n" "genius> SurfacePlotData(d)\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9368 msgid "" "Here's an example of how to plot in polar coordinates, in particular how to " "plot the function -r^2 * theta: <_:screen-1/>" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9381 msgid "SurfacePlotDataGrid" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9383 #, no-wrap msgid "SurfacePlotDataGrid (data,[x1,x2,y1,y2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9384 #, no-wrap msgid "SurfacePlotDataGrid (data,[x1,x2,y1,y2,z1,z2])" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9385 #, no-wrap msgid "SurfacePlotDataGrid (data,[x1,x2,y1,y2],label)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9386 #, no-wrap msgid "SurfacePlotDataGrid (data,[x1,x2,y1,y2,z1,z2],label)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9387 msgid "" "Plot a surface from regular rectangular data. The data is given in a n by m " "matrix where the rows are the x coordinate and the columns are the y " "coordinate. The x coordinate is divided into equal n-1 subintervals and y " "coordinate is divided into equal m-1 subintervals. The limits x1 and x2 give the interval on the x-axis that we " "use, and the limits y1 and y2 give the " "interval on the y-axis that we use. If the limits z1 and " "z2 are not given they are computed from the data (to be " "the extreme values from the data)." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9401 msgid "" "Optionally we can give the label, if label is not given then empty label is " "used." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9407 #, no-wrap msgid "" "genius> SurfacePlotDataGrid([1,2;3,4],[0,1,0,1])\n" "genius> SurfacePlotDataGrid(data,[-1,1,-1,1],\"My data\")\n" "genius> d:=null; for i=1 to 20 do for j=1 to 10 do d@(i,j) = (0.1*i-1)^2-(0.1*j)^2;\n" "genius> SurfacePlotDataGrid(d,[-1,1,0,1],\"half a saddle\")\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9418 msgid "SurfacePlotDrawLine" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9420 #, no-wrap msgid "SurfacePlotDrawLine (x1,y1,z1,x2,y2,z2,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9421 #, no-wrap msgid "SurfacePlotDrawLine (v,...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9422 msgid "" "Draw a line from x1,y1,z1 to x2,y2,z2. x1,y1,z1, " "x2,y2,z2 can be " "replaced by an n by 3 matrix for a longer polyline." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9429 C/genius.xml:9484 msgid "" "Extra parameters can be added to specify line color, thickness, the plotting " "window, or legend. You can do this by adding an argument string " "\"color\", \"thickness\", " "\"window\", or \"legend\", and " "after it specify the color, the thickness, the window as 6-vector, or the " "legend." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9450 C/genius.xml:9504 msgid "" "The window should be given as usual as [x1,x2,y1,y2,z1,z2], or alternatively can be given as a string \"fit\" in which case, the x range will be set precisely and the y range " "will be set with five percent borders around the line." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9463 #, no-wrap msgid "" "genius> SurfacePlotDrawLine(0,0,0,1,1,1,\"color\",\"blue\",\"thickness\",3)\n" "genius> SurfacePlotDrawLine([0,0,0;1,-1,2;-1,-1,-3])\n" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9467 C/genius.xml:9521 msgid "Available from version 1.0.19 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9474 msgid "" "SurfacePlotDrawPoints" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9476 #, no-wrap msgid "SurfacePlotDrawPoints (x,y,z,...)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9477 #, no-wrap msgid "SurfacePlotDrawPoints (v,...)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9478 msgid "" "Draw a point at x,y,z. The input can be an n by 3 matrix for " "n different points. This function has essentially the " "same input as SurfacePlotDrawLine." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9517 #, no-wrap msgid "" "genius> SurfacePlotDrawPoints(0,0,0,\"color\",\"blue\",\"thickness\",3)\n" "genius> SurfacePlotDrawPoints([0,0,0;1,-1,2;-1,-1,1])\n" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9528 msgid "" "VectorfieldClearSolutions" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9530 #, no-wrap msgid "VectorfieldClearSolutions ()" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9531 msgid "" "Clears the solutions drawn by the VectorfieldDrawSolution function." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9536 C/genius.xml:9555 msgid "Version 1.0.6 onwards." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9541 msgid "" "VectorfieldDrawSolution" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9543 #, no-wrap msgid "VectorfieldDrawSolution (x, y, dt, tlen)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9544 msgid "" "When a vector field plot is active, draw a solution with the specified " "initial condition. The standard Runge-Kutta method is used with increment " "dt for an interval of length tlen. " "Solutions stay on the graph until a different plot is shown or until you " "call VectorfieldClearSolutions. You can also use the graphical interface to draw solutions and " "specify initial conditions with the mouse." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9560 msgid "VectorfieldPlot" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9562 #, no-wrap msgid "VectorfieldPlot (funcx, funcy)" msgstr "" #. (itstool) path: listitem/synopsis #: C/genius.xml:9563 #, no-wrap msgid "VectorfieldPlot (funcx, funcy, x1, x2, y1, y2)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9564 msgid "" "Plot a two dimensional vector field. The function funcx " "should be the dx/dt of the vectorfield and the function funcy should be the dy/dt of the vectorfield. The functions should take " "two real numbers x and y, or a single " "complex number. When the parameter VectorfieldNormalized is " "true, then the magnitude of the vectors is normalized. " "That is, only the direction and not the magnitude is shown." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9577 msgid "" "Optionally you can specify the limits of the plotting window as x1, x2, y1, y2. If limits are not specified, then the currently set limits apply " "(See LinePlotWindow)." msgstr "" #. (itstool) path: para/screen #: C/genius.xml:9591 #, no-wrap msgid "genius> VectorfieldPlot(`(x,y)=x^2-y, `(x,y)=y^2-x, -1, 1, -1, 1)\n" msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:9604 msgid "Example Programs in GEL" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9608 #, no-wrap msgid "function f(x) = if x <= 1 then 1 else (f(x-1)*x)\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9606 msgid "Here is a function that calculates factorials: <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9613 #, no-wrap msgid "" "function f(x) = (\n" " if x <= 1 then\n" " 1\n" " else\n" " (f(x-1)*x)\n" ")\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9611 msgid "With indentation it becomes: <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9623 #, no-wrap msgid "" "function f(x) = (\n" " if (x <= 1) then return (1);\n" " return (f(x-1) * x)\n" ")\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9621 msgid "" "This is a direct port of the factorial function from the bc manpage. The syntax seems similar to bc, but different in that in GEL, the last expression is the one " "that is returned. Using the return function instead, it " "would be: <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9634 #, no-wrap msgid "function f(x) = prod k=1 to x do k\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9630 msgid "" "By far the easiest way to define a factorial function would be using the " "product loop as follows. This is not only the shortest and fastest, but also " "probably the most readable version. <_:programlisting-1/>" msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9643 #, no-wrap msgid "" "# Calculate the row-echelon form of a matrix\n" "function MyOwnREF(m) = (\n" " if not IsMatrix(m) or not IsValueOnly(m) then\n" " (error(\"MyOwnREF: argument not a value only matrix\");bailout);\n" " s := min(rows(m), columns(m));\n" " i := 1;\n" " d := 1;\n" " while d <= s and i <= columns(m) do (\n" "\n" " # This just makes the anchor element non-zero if at\n" " # all possible\n" " if m@(d,i) == 0 then (\n" " j := d+1;\n" " while j <= rows(m) do (\n" " if m@(j,i) == 0 then\n" " (j=j+1;continue);\n" " a := m@(j,);\n" " m@(j,) := m@(d,);\n" " m@(d,) := a;\n" " j := j+1;\n" " break\n" " )\n" " );\n" " if m@(d,i) == 0 then\n" " (i:=i+1;continue);\n" " \n" " # Here comes the actual zeroing of all but the anchor\n" " # element rows\n" " j := d+1;\n" " while j <= rows(m)) do (\n" " if m@(j,i) != 0 then (\n" " m@(j,) := m@(j,)-(m@(j,i)/m@(d,i))*m@(d,)\n" " );\n" " j := j+1\n" " );\n" " m@(d,) := m@(d,) * (1/m@(d,i));\n" " d := d+1;\n" " i := i+1\n" " );\n" " m\n" ")\n" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9638 msgid "" "Here is a larger example, this basically redefines the internal ref function to " "calculate the row echelon form of a matrix. The function ref is built in and much faster, but this example demonstrates some of " "the more complex features of GEL. <_:programlisting-1/>" msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:9691 msgid "Settings" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9693 msgid "" "To configure Genius Mathematics Tool, choose " "Settings Preferences. There are several basic parameters provided by " "the calculator in addition to the ones provided by the standard library. " "These control how the calculator behaves." msgstr "" #. (itstool) path: note/title #: C/genius.xml:9703 msgid "Changing Settings with GEL" msgstr "" #. (itstool) path: note/para #: C/genius.xml:9704 msgid "" "Many of the settings in Genius are simply global variables, and can be " "evaluated and assigned to in the same way as normal variables. See about evaluating and assigning to " "variables, and for a list " "of settings that can be modified in this way." msgstr "" #. (itstool) path: para/programlisting #: C/genius.xml:9713 #, no-wrap msgid "MaxDigits = 12\n" msgstr "" #. (itstool) path: note/para #: C/genius.xml:9711 msgid "" "As an example, you can set the maximum number of digits in a result to 12 by " "typing: <_:programlisting-1/>" msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:9719 msgid "Output" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9722 msgid "Maximum digits to output" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9726 msgid "" "The maximum digits in a result (MaxDigits)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9730 msgid "Results as floats" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9734 msgid "" "If the results should be always printed as floats (ResultsAsFloats)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9738 msgid "Floats in scientific notation" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9742 msgid "" "If floats should be in scientific notation (ScientificNotation)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9746 msgid "Always print full expressions" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9750 msgid "" "Should we print out full expressions for non-numeric return values (longer " "than a line) (FullExpressions)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9755 msgid "Use mixed fractions" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9759 msgid "" "If fractions should be printed as mixed fractions such as \"1 1/3\" rather " "than \"4/3\". (MixedFractions)" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9764 msgid "" "Display 0.0 when floating point number is less than 10^-x (0=never " "chop)" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9768 msgid "" "How to chop output. But only when other numbers nearby are large. See the " "documentation of the parameter OutputChopExponent." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9775 msgid "" "Only chop numbers when another number is greater than 10^-x" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9779 msgid "" "When to chop output. This is set by the parameter OutputChopWhenExponent. See the documentation of the parameter OutputChopExponent." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9786 msgid "Remember output settings across sessions" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9790 msgid "" "Should the output settings in the Number/Expression output " "options frame be remembered for next session. Does not apply to " "the Error/Info output options frame." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9792 msgid "" "If unchecked, either the default or any previously saved settings are used " "each time Genius starts up. Note that settings are saved at the end of the " "session, so if you wish to change the defaults check this box, restart " "Genius Mathematics Tool and then uncheck it again." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9803 msgid "Display errors in a dialog" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9807 msgid "" "If set the errors will be displayed in a separate dialog, if unset the " "errors will be printed on the console." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9813 msgid "Display information messages in a dialog" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9817 msgid "" "If set the information messages will be displayed in a separate dialog, if " "unset the information messages will be printed on the console." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9824 msgid "Maximum errors to display" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9828 msgid "" "The maximum number of errors to return on one evaluation (MaxErrors). " "If you set this to 0 then all errors are always returned. Usually if some " "loop causes many errors, then it is unlikely that you will be able to make " "sense out of more than a few of these, so seeing a long list of errors is " "usually not helpful." msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:9840 msgid "" "In addition to these preferences, there are some preferences that can only " "be changed by setting them in the workspace console. For others that may " "affect the output see ." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9849 msgid "IntegerOutputBase" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9853 msgid "The base that will be used to output integers" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9858 msgid "OutputStyle" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9862 msgid "" "A string, can be \"normal\", \"latex\", \"mathml\" or \"troff\" and " "it will affect how matrices (and perhaps other stuff) is printed, useful for " "pasting into documents. Normal style is the default human readable printing " "style of Genius Mathematics Tool. The other " "styles are for typesetting in LaTeX, MathML (XML), or in Troff." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:9874 msgid "Precision" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9877 msgid "Floating point precision" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9881 msgid "" "The floating point precision in bits (FloatPrecision). Note that " "changing this only affects newly computed quantities. Old values stored in " "variables are obviously still in the old precision and if you want to have " "them more precise you will have to recompute them. Exceptions to this are " "the system constants such as pi or e." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9895 msgid "Remember precision setting across sessions" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9899 msgid "" "Should the precision setting be remembered for the next session. If " "unchecked, either the default or any previously saved setting is used each " "time Genius starts up. Note that settings are saved at the end of the " "session, so if you wish to change the default check this box, restart genius " "and then uncheck it again." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:9912 msgid "Terminal" msgstr "" #. (itstool) path: sect1/para #: C/genius.xml:9914 msgid "Terminal refers to the console in the work area." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9920 msgid "Scrollback lines" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9924 msgid "Lines of scrollback in the terminal." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9928 msgid "Font" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9932 msgid "The font to use on the terminal." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9936 msgid "Black on white" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9940 msgid "If to use black on white on the terminal." msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9944 msgid "Blinking cursor" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9948 msgid "" "If the cursor in the terminal should blink when the terminal is in focus. " "This can sometimes be annoying and it generates idle traffic if you are " "using Genius remotely." msgstr "" #. (itstool) path: sect1/title #: C/genius.xml:9955 msgid "Memory" msgstr "" #. (itstool) path: varlistentry/term #: C/genius.xml:9958 msgid "Maximum number of nodes to allocate" msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9962 msgid "" "Internally all data is put onto small nodes in memory. This gives a limit on " "the maximum number of nodes to allocate for computations. This limit avoids " "the problem of running out of memory if you do something by mistake that " "uses too much memory, such as a recursion without end. This could slow your " "computer and make it hard to even interrupt the program." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9970 msgid "" "Once the limit is reached, Genius Mathematics Tool asks if you wish to interrupt the computation or if you wish to " "continue. If you continue, no limit is applied and it will be possible to " "run your computer out of memory. The limit will be applied again next time " "you execute a program or an expression on the Console regardless of how you " "answered the question." msgstr "" #. (itstool) path: listitem/para #: C/genius.xml:9978 msgid "" "Setting the limit to zero means there is no limit to the amount of memory " "that genius uses." msgstr "" #. (itstool) path: chapter/title #: C/genius.xml:9992 msgid "About Genius Mathematics Tool" msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:9994 msgid "" "Genius Mathematics Tool was written by Jiří " "(George) Lebl (jirka@5z.com). The history of " "Genius Mathematics Tool goes back to late 1997. " "It was the first calculator program for GNOME, but it then grew beyond being " "just a desktop calculator. To find more information about " "Genius Mathematics Tool, please visit the Genius Web page." msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:10001 msgid "" "To report a bug or make a suggestion regarding this application or this " "manual, send email to me (the author) or post to the mailing list (see the " "web page)." msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:10007 msgid "" "This program is distributed under the terms of the GNU General Public " "license as published by the Free Software Foundation; either version 3 of " "the License, or (at your option) any later version. A copy of this license " "can be found at this link, or in the file COPYING included with the source " "code of this program." msgstr "" #. (itstool) path: chapter/para #: C/genius.xml:10014 msgid "" "Jiří Lebl was during various parts of the development partially supported " "for the work by NSF grants DMS 0900885, DMS 1362337, the University of " "Illinois at Urbana-Champaign, the University of California at San Diego, the " "University of Wisconsin-Madison, and Oklahoma State University. The software " "has been used for both teaching and research." msgstr ""