<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kappname "&kalgebra;">
  <!ENTITY package "kdeedu">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Russian "INCLUDE">
]>

<book lang="&language;">

<bookinfo>
<title
>Руководство &kalgebra;</title>

<authorgroup>
<author
><firstname
>Aleix</firstname
><surname
>Pol</surname
> <affiliation
> <address
>&Aleix.Pol.mail;</address>
</affiliation>
</author>
  
</authorgroup>

<copyright>
<year
>2007</year>
<holder
>&Aleix.Pol;</holder>
</copyright>

<legalnotice
>&FDLNotice;</legalnotice>


<date
>2008-08-22</date>
<releaseinfo
>0.8 (&kde; 4.1.2</releaseinfo>

<abstract>
<para
>&kalgebra; - калькулятор, основанный на специальном языке разметки Mathml. Эта версия программы может выполнять простые действия Mathml (арифметические и логические) и строить двух- и трёхмерные графики. Для того чтобы использовать &kalgebra; не обязательно знать Mathml. </para>
</abstract>

<keywordset>
<keyword
>KDE</keyword>
<keyword
>kdeedu</keyword>
<keyword
>графика </keyword>
<keyword
>математика</keyword>
<keyword
>2D</keyword>
<keyword
>3D</keyword>
<keyword
>mathml</keyword>
</keywordset>

</bookinfo>

<chapter id="introduction"
> 
<title
>Введение</title
> 
<para
>&kalgebra; - основанный на Mathml графический калькулятор. Хотя он изначально ориентирован на Mathml, для его использования достаточно базовых математический знаний.</para
> 

<screenshot>
<screeninfo
>На этом изображении вы видите главное  окно &kalgebra;</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="kalgebra-main-window.png" format="PNG"/>
	  </imageobject>
	    <textobject>
	    <phrase
>Главное  окно &kalgebra;</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para
>Главное  окно &kalgebra; состоит из вкладки <guilabel
>Консоли</guilabel
>, вкладки двумерных графиков, вкладки трёхмерных графиков и вкладки <guilabel
>Словаря</guilabel
>. Под этими вкладками находится поле для ввода функций и выполнения вычислений. </para>

</chapter>

<chapter id="syntax">
<title
>Синтаксис</title>

<para
>Если вы хотите понять как работает программа, обратите внимание на то,что вводимые данные преобразуются в команды языка Mathml  (повторимся - для использования программы не обязательно знать Mathml). Синтаксис команд программы основан на здравом смысле, он должен быть понятным каждому. Автор программы знает синтаксис maxіma и maple, и потому синтаксис программы очень подобен командам этих программ.</para>
<para
>Вот список доступных в этой версии операций:</para>
<itemizedlist>
<listitem
><para
>+ - * / : Сложение, вычитание, умножение и деление.</para
> </listitem>
<listitem
><para
>^, **: Возведение в степень. Можно использвать символы Unicode - ² и так далее. Операция добытия корня обратна операции возведения в степень: a**(1/b)</para
></listitem>
<listitem
><para
>-&gt; : лямбда. Это способ указания независимой переменной в функции.</para
></listitem>
<listitem
><para
>x=a..b: Эта конструкция используется если мы меняем диапазон значений  переменной (ограниченное изменение + ограничение  свыше + ограничение  снизу). Это означает, что x изменяется в интервале от a до b.</para
></listitem>
<listitem
><para
>(): Скобки используются для явного задания приоритета вычислений.</para
></listitem>
<listitem
><para
>abc(параметры): Функции. В роли abc может быть знак оператора или имя функции.</para
></listitem>
<listitem
><para
>:= : Определение. Задаёт значение переменной. Допустимы выражения типа x:=3, x:=y (даже если y не определена), perіmeter:=r->2*pі*r. </para
></listitem>
<listitem
><para
>? : Условный оператор для задания кусочн-непрерывных функций.  Если указать условие перед знаком «?», то следующее за ним значение будет использовано только если условие выполняется,  а если перед «?» не будет условия, будет использовано предыдущее условие. Пример: piecewise { eq(x,0) ? 0, eq(x,1) ? x+1, ? x**2 } </para
></listitem>
<listitem
><para
>{ }: Блок MathML. Позволяет указывать произволный код на MathML внутри.  </para
></listitem>
</itemizedlist>
<para
>Читатель теперь может заметить, а зачем вообще упоминать о Mathml? Очень просто. С его помощью можно выполнять операции наподобие  cos(), sіn(), и любые другие тригонометрические функции, sum() и product(). Характер самой функции не важен. Можно использовать plus() (сложение), tіmes() (умножение) и любые другие функции, которым отвечает определённый оператор.  Также реализованы булевские функции, что позволяет выполнять операции наподобие or(1,0,0,0,0).</para>

</chapter>

<chapter id="using-console">
<title
>Консоль</title>
<para
>Консоль &kalgebra; полезна в качестве калькулятора. В ней выводится список определённых переменных. Двойной щелчок на нём откроет окно, в котором можно менять   значения переменных (один из способов «обмануть» журнал).  После выполнения каждого выражения значение переменной ans меняется на значение результата последнего выражения.</para>

<para
>Примеры:</para>
<itemizedlist>
<listitem
><para
>sin(pi)</para
></listitem>
<listitem
><para
>k:=33</para
></listitem>
<listitem
><para
>sum(k*x : x=0..x)</para
></listitem>
<listitem
><para
>f:=p->p*k</para
></listitem>
<listitem
><para
>f(pi)</para
></listitem>
</itemizedlist>

<para
>Пункты меню:</para>

<variablelist>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>N</keycap
></keycombo
></shortcut
> <guimenuitem
>Создать</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Очищает журнал.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>L</keycap
></keycombo
></shortcut
> <guimenuitem
>Загрузить скрипт</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Последовательно выполняет инструкции из файла. Подходит для определения библиотек или похожих задач .</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>G</keycap
></keycombo
></shortcut
> <guimenuitem
>Сохранить скрипт</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Сохраняет инструкции введенные за время сеанса.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>S</keycap
></keycombo
></shortcut
> <guimenuitem
>Сохранить журнал</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Сохраняет журнал с результатами и другой информацией в файл.</para
></listitem>
</varlistentry>

<varlistentry>
<term
><menuchoice
><shortcut
><keycombo action="simul"
>&Ctrl; <keycap
>Q</keycap
></keycombo
></shortcut
> <guimenuitem
>Выйти</guimenuitem
> </menuchoice
></term>
<listitem
><para
>Завершает работу программы.</para
></listitem>
</varlistentry>

</variablelist>

</chapter>

<chapter id="two-D-graphs">
<title
>Двумерные графики </title>
<para
>Чтобы добавить новый двумерный график в &kalgebra;, перейдите на вкладку <guilabel
>Двумерные графики </guilabel
> и нажмите кнопку <guilabel
>Добавить  </guilabel
>. После этого фокус будет перенесен в поле ввода, где вы сможете указать функцию.</para>

<sect1 id="two-D-syntax">
<title
>Синтаксис</title>
<para
>Если вы хотите использовать простую форму задания функций f(x), не нужно отдельно задавать её, но, если вы хотите определить, скажем, f(y) или функцию в полярных координатах, добавьте y-> и q-> в качестве независимых переменных.</para>

<para
>Примеры:</para>
<itemizedlist>
<listitem
><para
>sіn(x)</para
></listitem>
<listitem
><para
>x²</para
></listitem>
<listitem
><para
>y->sіn(y)</para
></listitem>
<listitem
><para
>q->3*sіn(7q)</para
></listitem>
<listitem
><para
>q=0..100->q</para
></listitem>
</itemizedlist>
<para
>Если вы ввели функцию, нажмите кнопку <guibutton
>OK</guibutton
> чтобы увидеть график в главном  окне.</para>

</sect1>

<sect1 id="two-D-features">
<title
>Возможности</title>
<para
>Можно начертить несколько  графиков на одном рисунке. Воспользуйтесь кнопкой <guilabel
>Добавить</guilabel
> в режиме списка. Для каждого  из  графиков можно указать цвет.</para>

<para
>Размер и расположение области просмотра  можно менять мышью. Колёсиком мыши можно её увеличивать и уменьшать.  Также можно мышью выделить область (нажав левую кнопку мыши в левом верхнем углу и удерживая её перенести указатель в правую нижнюю, затем отпустить) и она будет растянута до размеров области просмотра.</para>

<para
>Скрыть вкладку <guilabel
>Список</guilabel
> можно выбрав соответствующий пункт в её контекстном меню.</para>

</sect1>

</chapter>

<chapter id="three-D-graphs">
<title
>Трёхмерные графики</title>

<para
>Для того чтобы построить трёхмерный график с помощью &kalgebra;, перейдите на вкладку <guilabel
>Трёхмерные графики </guilabel
>. Внизу вы увидите поле для ввода, куда и следует ввести вашу функцию. В этой версии &kalgebra; поддерживаются лишь функции вида  f(x,y), которые определяют третью координату, Z.</para>

<para
>Примеры:</para>
<itemizedlist>
<listitem
><para
>sіn(x)*sіn(y)</para
></listitem>
<listitem
><para
>x/y</para
></listitem>
</itemizedlist>

</chapter>

<chapter id="dictionary">
<title
>Словарь</title>

<para
>Словарь является сборником всех доступных действий &kalgebra;. Он полезен тем, что в нём можно проверить и узнать количество и порядок каждой из  функций программы.</para>

</chapter>


<chapter id="credits">
<title
>Благодарности и лицензия</title>

<itemizedlist>
<listitem
><para
>Авторские права на программу © 2005-2007 &Aleix.Pol;</para>
</listitem>
</itemizedlist>

<para
>Авторские права на документацию к  программы © 2007 &Aleix.Pol; &Aleix.Pol.mail; </para>

  
&underFDL; &underGPL; </chapter>


<appendix id="installation">
<title
>Установление </title>

<sect1 id="getting-kapptemplate">
<title
>Как получить &kalgebra;</title>
&install.intro.documentation; </sect1>

<sect1 id="compilation">
<title
>Сборка и установка</title>
&install.compile.documentation; </sect1>

</appendix>
&documentation.index; 
</book>

<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:
-->
