xtridiag.c

00001 /*
00002   Пример использования функций из модуля @band.h@
00003   Решение трехдиагональной системы
00004   %%$  \left\{    \begin{narrowarray}{rcrcrcr}       3x\sb 1 & + & 6x\sb 2 &   &      & = &  9,\\        x\sb 1 & + & 4x\sb 2 & + & 7x\sb 3 & = & 12,\\            &   & 2x\sb 2 & + & 5x\sb 3 & = &  7.\\    \end{narrowarray}  \right.  $%%
00005 */
00006 
00007 #include "nl.h"
00008 
00009 int main()
00010 {
00011   size_t n = 3;
00012   double a[] = {0, 1, 2};
00013   double d[] = {3, 4, 5};
00014   double c[] = {6, 7, 0};
00015   double b[] = {9, 12, 7};
00016   double *x;
00017 
00018   x = nl_dvector_create(n);
00019 
00020   band_tridiag(a, d, c, b, x, n);
00021   nl_dvector_print(x, n, NULL);
00022 
00023   nl_dvector_free(x);
00024 
00025   return 0;
00026 }

Документация по NL. Последние изменения: Mon Oct 9 12:25:54 2006. Создано системой  doxygen 1.4.7