<chapter id="using-kmplot">
<title
>Користування &kmplot;</title>

<para
>&kmplot; може працювати з декількома типами функцій, які можна вказувати як у явному вигляді, так і у вигляді рівняння:</para>

<itemizedlist>
	<listitem
><para
>Функції для побудови графіків у декартовій системі координат можна записувати у формі <quote
>y = x^2</quote
>, де x використано як змінну; або у формі <quote
>f(a) = a^2</quote
>, де назва змінної є довільною.</para
></listitem>
	<listitem
><para
>Визначення функцій, заданих параметрично, подібні до визначень функцій у декартових координатах. Координати x і y можна ввести у вигляді рівнянь відносно змінної t, наприклад, <quote
>x = sin(t)</quote
>, <quote
>y = cos(t)</quote
>, або у вигляді функцій, наприклад, <quote
>f_x(s) = sin(s)</quote
>, <quote
>f_y(s) = cos(s)</quote
>.</para
></listitem>
	<listitem
><para
>Визначення функцій, заданих у полярних координатах, подібне до визначення функцій у декартових координатах. Їх можна ввести або у вигляді рівняння у &thgr;, наприклад, <quote
>r = &thgr;</quote
>, або як функцію, наприклад, <quote
>f(x) = x</quote
>.</para
></listitem>
	<listitem
><para
>Назву функції, заданої неявно, слід вводити окремо від виразу, який пов’язує між собою координати x і y. Якщо змінніthe x і y вказано у назві функції (наприклад, якщо ви вказали у якості назви функції вираз <quote
>f(a,b)</quote
>), буде використано вказані змінні. У іншому випадку буде вважатися, що змінні позначаються літерами x і y.</para
></listitem>
	<listitem
><para
>Функції, які задаються диференціальним рівнянням, описуються у вигляді диференціального рівняння розв’язаного відносно старшої похідної. Диференціювання позначається штрихом ('). У формі функцій рівняння буде схожим на <quote
>f''(x) = f' &minus; f</quote
>. У формі рівняння це буде щось на зразок <quote
>y'' = y' &minus; y</quote
>. Зауважте, що у обох випадках частину <quote
>(x)</quote
> не потрібно додавати до членів нижчого порядку (тобто, вам слід вводити <quote
>f'(x) = &minus;f</quote
>, а не <quote
>f'(x) = &minus;f(x)</quote
>).</para
></listitem>
</itemizedlist>

<para
>Всі поля для запису рівнянь мають кнопку праворуч від поля. Якщо ви на неї натиснете, з’явиться діалогове вікно <guilabel
>Редактора рівнянь</guilabel
>, у якому ви знайдете: <itemizedlist>
		<listitem>
			<para
>Широкий вибір математичних символів, які можна використовувати у рівняннях, але яких немає на звичайних клавіатурах.</para>
		</listitem>
		<listitem>
			<para
>Список сталих користувача і кнопка для їх зміни.</para>
		</listitem>
		<listitem>
			<para
>Список вже визначених функцій. Зауважте, що якщо ви вибрали якусь частину тексту, під час додавання функції її буде використано у якості параметра функції. Наприклад, якщо вибрано частину <quote
>1 + x</quote
> у рівнянні <quote
>y = 1 + x</quote
>, а потім вказано функцію синуса, рівняння набуде вигляду <quote
> y = sin(1+x)</quote
>. </para>
		</listitem>
	</itemizedlist>
</para>

<screenshot>
	<screeninfo
>Ось знімок вітального вікна &kmplot;</screeninfo>
	<mediaobject>
		<imageobject>
			<imagedata fileref="main.png" format="PNG"/>
		</imageobject>
		<textobject>
			<phrase
>Знімок вікна</phrase>
		</textobject>
	</mediaobject>
</screenshot>

<sect1 id="function-types">
	<title
>Типи функцій</title>
	
	<sect2 id="cartesian-functions">
		<title
>Функції у декартовій системі координат</title>
		<para
>Щоб ввести явну функцію (тобто, функцію у вигляді y=f(x)) у &kmplot;, просто наберіть такий рядок: <screen
><userinput
><replaceable
>f</replaceable
>(<replaceable
>x</replaceable
>) = <replaceable
>вираз</replaceable
></userinput
></screen
>, де: <itemizedlist>
				<listitem
><para
><replaceable
>f</replaceable
> — це назва функції, яку можна задавати у вигляді рядка з літер і цифр.</para>
				</listitem>
				
				<listitem
><para
><replaceable
>x</replaceable
> — координата x, яку буде використано у виразі по інший бік від знака рівності. Це німа змінна, отже, ви можете використовувати будь-яку назву змінної, результат має бути однаковим.</para>
				</listitem>
				
				<listitem>
					<para
><replaceable
>вираз</replaceable
> — це вираз функції, яку буде накреслено, поданий за допомогою синтаксису &kmplot;. Про синтаксис можна прочитати у <xref linkend="math-syntax"/>. </para>
				</listitem>
				
			</itemizedlist>
		</para>
	</sect2>
	
	<sect2 id="parametric-functions">
		<title
>Функції, задані параметрично</title>
		<para
>Функції, задані параметрично, — це функції, у яких координати точок x і y визначаються окремими функціями однієї змінної (параметра), яку часто позначають літерою t. Щоб ввести функцію, задану параметрично у &kmplot;, виконайте ті самі процедури, що і під час визначення функції у декартовій системі координат, для кожної з функцій x і y. Так само, як і у випадку функцій у декартових координатах, ви можете використовувати у якості назви параметра будь-яку бажану назву.</para>
		<para
>Припустімо, наприклад, що ви бажаєте побудувати коло, яке задається параметричними рівняннями x = sin(t), y = cos(t). Після створення параметричного графіка введіть відповідні рівняння у поля для x і y, тобто, <userinput
>f_x(t)=sin(t)</userinput
> і <userinput
>f_y(t)=cos(t)</userinput
>. </para>
		<para
>Ви можете встановити додаткові параметри графіка у редакторі функцій: <variablelist
> <varlistentry>
					<term
><guilabel
>Мін</guilabel
></term>
					<term
><guilabel
>Макс</guilabel
></term>
					<listitem>
						<para
>Ці параметри обмежують діапазон параметра t, для якого буде побудовано функцію.</para>
					</listitem>
				</varlistentry>
			</variablelist>
		</para>
	</sect2>
	
	<sect2 id="polar-functions">
		<title
>Функції, задані у полярних координатах</title>
		
		<para
>Координатами точки у полярній системі координат є відстань точки від початку координат (полярний радіус, який зазвичай позначають літерою r), і кут між променем проведеним через початок координат і точку і додатним напрямком вісі x (полярний кут, який зазвичай позначають &thgr;, тобто грецькою літерою "тета"). Щоб ввести функцію, задану у полярних координатах, натисніть кнопку <guilabel
>Створити</guilabel
> і виберіть <guilabel
>Графік у полярній системі</guilabel
> зі списку. У полі визначення вкажіть рівняння для функції і назву змінної, яка відповідає полярному куту, наприклад, щоб побудувати спіраль Архімеда, r = &thgr;, введіть: <screen
><userinput
>r(&thgr;) = &thgr;</userinput
></screen
>. Зауважте, що ви можете використовувати для позначення полярного кута будь-яку літеру, отже, якщо ви введете <quote
>r(t) = t</quote
> або <quote
>f(x) = x</quote
>, ви отримаєте той самий результат. </para>
	</sect2>
	
	<sect2 id="implicit-functions">
		<title
>Функції, задані неявно</title>
		
		<para
>Неявний вираз для функції — це рівняння, яке пов’язує між собою координати точок функції x і y. Наприклад, щоб побудувати коло, натисніть кнопку <guilabel
>Створити</guilabel
> і оберіть зі списку <guilabel
>Графік неявної функції</guilabel
>. Потім введіть до поля рівняння (під полем назви функції) такий текст: <screen
><userinput
>x^2 + y^2 = 25</userinput
></screen>
		</para>
	</sect2>
	
	<sect2 id="differential-functions">
		<title
>Графіки розв’язків диференціальних рівнянь</title>
		
		<para
>&kmplot; може будувати графіки розв’язків диференціальних рівнянь. Цими рівняннями є рівняння розв’язані відносно найстаршої похідної у вигляді y<superscript
>(n)</superscript
> = F(x,y',y'',...,y<superscript
>(n&minus;1)</superscript
>), де y<superscript
>k</superscript
> позначає k-ту похідну функції y(x). &kmplot; може встановлювати порядок похідної лише за кількістю штрихів, які записано після назви функції. Наприклад, для побудови синуса можна скористатися диференціальним рівнянням <userinput
>y'' = &minus; y</userinput
> або <userinput
>f''(x) = −f</userinput
>. </para>
		
		<para
>Але для встановлення кривої-розв’язку диференціального рівняння недостатньо самого диференціального рівняння. Для побудови на діаграмі кривої потрібна комбінація диференціального рівняння і початкових умов (задача Коші). Ви можете вказати початкові умови, якщо перейдете на вкладку <guilabel
>Початкові умови</guilabel
> після задання самого диференціального рівняння. Кількість стовпчиків доступних для редагування початкових умов залежатиме від порядку диференціального рівняння. </para>
		
		<para
>Ви можете встановити додаткові параметри графіка у редакторі функцій: <variablelist
> <varlistentry>
					<term
><guilabel
>Крок</guilabel
></term>
					<listitem>
						<para
>Параметр кроку на панелі точності буде використано під час числового розв’язання диференціального рівняння (за допомогою метода Рунге-Кутта). Його значення — максимальний використаний розмір кроку; для побудови достатньо збільшеної ділянки графіку може бути використано менше значення кроку.</para>
					</listitem>
				</varlistentry>
			</variablelist>
		</para>
		
	</sect2>
</sect1>

<sect1 id="combining-functions">
	<title
>Складені функції</title>
	<para
>Функції можна комбінувати для отримання нових функцій. Просто введіть ці функції після знаку рівності у виразі так, неначе ці функції є простими змінними. Наприклад, якщо ви визначили функції f(x) і g(x), ви можете побудувати графік їх суми за допомогою команди: <screen
><userinput
>sum(x) = f(x) + g(x)</userinput
></screen>
	</para>
</sect1>

<sect1 id="function-appearance">
	<title
>Зміна вигляду функцій</title>
	
	<para
>Щоб змінити вигляд графіка функції у головному вікні побудови, виберіть цю функцію на бічній панелі  <guilabel
>Функції</guilabel
>. Ви можете змінити товщину лінії графіка, колір та багато інших параметрів, якщо натискатимете на кнопки <guibutton
>Колір</guibutton
> або <guibutton
>Додатково...</guibutton
>, розташовані внизу розділу <guilabel
>Вигляд</guilabel
>. </para>
	
	<para
>Якщо ви працюєте зі звичайною функцією, у вікні редактора буде три вкладки. На першій ви маєте вказати рівняння, яке задає функцію. Вкладка <guilabel
>Похідні</guilabel
> надасть вам можливість вказати програмі, що слід побудувати і графіки першої та другої похідних функції. За допомогою вкладки <guilabel
>Інтеграл</guilabel
> ви можете побудувати графік первісної функції. </para>
</sect1>

<sect1 id="popupmenu">
	<title
>Вигулькне меню</title>
	<screenshot>
	<screeninfo
>Виринаюче меню графіка</screeninfo>
	<mediaobject>
		<imageobject>
			<imagedata fileref="popup.png" format="PNG"/>
		</imageobject>
		<textobject>
			<phrase
>Виринаюче меню графіка</phrase>
		</textobject>
	</mediaobject>
	</screenshot>

	<para
>Якщо навести вказівник миші на графік функції або на точку графіка функції, заданої параметрично, і натиснути праву кнопку миші з’явиться вигулькне меню. У цьому меню буде три пункти:</para>
	
	<variablelist>
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Змінити</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Вибирає функцію на бічній панелі <guilabel
>Функції</guilabel
> для зміни.</para>
			</listitem>
		</varlistentry>

		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Сховати</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Ховає вибраний графік. Інші частини графіку функції будуть видимими.</para>
			</listitem>
		</varlistentry>
		
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Вилучити</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Вилучає функцію. Всі її графіки зникають.</para>
			</listitem>
		</varlistentry>
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Анімація графіка...</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Відкриває діалогове вікно <guilabel
>Параметрична анімація</guilabel
>.</para>
			</listitem>
		</varlistentry>
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Калькулятор</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Відкриває діалогове вікно <guilabel
>Калькулятора</guilabel
>.</para>
			</listitem>
		</varlistentry>
	</variablelist>
	
	<para
>Залежно від типу графіка, також можуть бути доступними ще чотири інструменти:</para>
	
	<variablelist>
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Намалювати область...</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>У діалозі, що з’явиться оберіть мінімальне і максимальне значення координат точок області за віссю x. Буде обчислено інтеграл і заповнено кольором, що відповідає кольорові графіка, область між графіком і віссю x на вказаному відрізку. </para>
			</listitem>
		</varlistentry>
		
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Знайти мінімум...</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Знайти на графіку мінімальне значення функції на заданому відрізку. У діалоговому вікні, що з’явиться буде виділено обраний графік. У цьому діалоговому вікні вам слід ввести ліву і праву границі відрізку, на якому ви бажаєте знайти мінімум. </para>
				<para
>Зауваження: Ви також можете вказати програмі, що точки екстремумів слід виокремити візуально. Доступ до відповідного параметра можна отримати у діалоговому вікні <guilabel
>Вигляд графіка</guilabel
>, яке викликається з бічної панелі <guilabel
>Функції</guilabel
>, натисканням кнопки <guibutton
>Додатково...</guibutton
>. </para>
			</listitem>
		</varlistentry>
		
		<varlistentry>
			<term
><menuchoice
><guimenuitem
>Знайти максимум...</guimenuitem>
				</menuchoice
></term>
			<listitem>
				<para
>Те саме, що і <guimenuitem
>Знайти мінімум...</guimenuitem
> у пункті вище, але замість мінімального значення буде знайдено максимальне.</para>
			</listitem>
		</varlistentry>
		
	</variablelist>
</sect1>

</chapter>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
sgml-parent-document:("index.docbook" "BOOK" "CHAPTER")
End:
-->
