%%
\documentclass[12pt]{article}
\usepackage[pdftex, pdfmark]{hyperref}
\usepackage[polish]{babel}
\usepackage{multicol}
\usepackage[MeX]{polski}
%\usepackage[latin2]{inputenc}
%\usepackage[cp1250]{inputenc}
\usepackage[utf8]{inputenc}
%\usepackage[utf8x]{inputenc}
\usepackage[intlimits]{amsmath}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage[a4paper]{geometry} 
\pagestyle{fancy}
\lhead{  \today}
\rhead{ }
\chead{  Podstawy programowania: {\em Mathematica } }
\rfoot{ https://ribes.if.uj.edu.pl/mathematica/ }
\cfoot{}
\lfoot{ andrzej.odrzywolek@uj.edu.pl }
\renewcommand{\headrulewidth}{3pt}
\renewcommand{\footrulewidth}{0.5pt}
\renewcommand{\fboxrule}{2pt}


\begin{document}

\title{Zastaw zadań 5}
\date{\today}
\maketitle



{\bf Zadanie 1.} 


Napisać program rozwiązujący układ dwóch równań z dwiema niewiadomymi metodą Newtona
(Zad.~2 z poprzedniego zestawu). Jeżeli układ zapiszemy w postaci:
\begin{subequations}
\begin{equation}
f(x,y) = 0
\end{equation}
\begin{equation}
g(x,y) = 0
\end{equation}
\end{subequations}
i oznaczymy przez $\{x_0, y_0\}$ wartości startowe to kolejne przybliżenie obliczamy ze wzoru:
\begin{equation}
\label{wzor}
\left(
\begin{array}{c}
 x_1 \\
 y_1
\end{array}
\right)
=
\left(
\begin{array}{c}
 x_0 \\
 y_0
\end{array}
\right )
+
\mathcal{J}^{-1} \cdot 
\left(
\begin{array}{c}
 f_0 \\
 g_0
\end{array}
\right)
\end{equation}
gdzie:
$$
f_0 \equiv f(x_0,y_0), \qquad g_0 \equiv g(x_0,y_0).
$$
Symbol $\mathcal{J}$ oznacza \textit{jakobian}, czyli macierz utworzoną z pochodnych:
{\Large
$$
\mathcal{J} = \left(
\begin{array}{cc}
 \frac{\partial f}{\partial x} &  \frac{\partial f}{\partial y}\\
 \frac{\partial g}{\partial x} & \frac{\partial g}{\partial y}
\end{array}
\right).
$$
}

$\mathcal{J}^{-1}$ oznacza macierz odwrotną (\pmb{Inverse}) obliczaną dla $x=x_0, y=y_0$.

\vspace{2cm}


{\bf Zadanie 2$^\ast$.} 


Zaimplementować metodę z Zad.~1 w przypadku układu równań o dowolnej
i~nieustalonej z góry liczbie niewiadomych.

\vspace{2cm}


{\bf Zadanie 3$^\ast$.} 

Wzór \eqref{wzor} pozwala na eleganckie i krótkie opisanie wykonywanych iteracji. Metodę Newtona można jednak
zaimplementować w sposób, który nie wymaga obliczania macierzy odwrotnej. Zaimplementuj algorytm tak,
aby uniknąć liczenia macierzy odwrotnej i porównaj szybkość działania.

\end{document}
