Страница 1 из 1

решение СЛАУ в матричной форме

Добавлено: Вт мар 03, 2009 12:42 pm
SA11
Есть ли какие-нибудь встроенные функции в MAPLE, позволяющие решить систему уравнений, если матрица порядка 100х100???
Функция linearsolve берет только матрицы, размером 10х10(( :cry:

Добавлено: Ср мар 04, 2009 3:17 pm
aar
Пакет LinearAlgebra обещает решать большие системы. Насколько большие, не знаю.

Добавлено: Ср мар 04, 2009 3:40 pm
SA11
Этот пакет подключен для решения, но уже для системы из 11 уравнений выдает такой ответ:

Код: Выделить всё

U := Vector(4, {(1) = ` 1 .. 11 `*Vector[column], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

Добавлено: Ср мар 04, 2009 4:21 pm
Irmantas
SA11 писал(а):Этот пакет подключен для решения, но уже для системы из 11 уравнений выдает такой ответ:

Код: Выделить всё

U := Vector(4, {(1) = ` 1 .. 11 `*Vector[column], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

Дайте ваши матрицы. Пасмотрим

Добавлено: Ср мар 04, 2009 5:08 pm
SA11
вот этот алгоритм. значения n,m меняются. вот больше 10 не считает

Добавлено: Чт мар 05, 2009 12:38 pm
Irmantas
Папробуите работать только с реальными числами а не с вырожениями. Добавил evalf в матрицу b и LinearSolve(TT, FF) работает до n=m=25 (больше непрбувал).
b:=matrix(m,n,(j,k)->evalf(sum(a[t,j]*a[t,k],t=1..m-1)*h[x]*h[s])):

Добавлено: Чт мар 05, 2009 5:16 pm
SA11
Irmantas писал(а): Добавил evalf в матрицу b и LinearSolve(TT, FF) работает до n=m=25 .
b:=matrix(m,n,(j,k)->evalf(sum(a[t,j]*a[t,k],t=1..m-1)*h[x]*h[s])):


Сделав тоже самое, все равно не выдает ответ(((

Добавлено: Чт мар 05, 2009 6:11 pm
Irmantas
SA11 писал(а):Сделав тоже самое, все равно не выдает ответ(((


hmmmmmm....
У меня всё нормално n=25 m=25.
Y[25] = -241.7866709*w[0](5/7*Pi)*cos(2.243994753*l)^2-53.87416136*sin(4.487989507*l)
Может вы видите ответ

Код: Выделить всё

| 25 Element Column Vector |
| Data Type: anything      |
| Storage: rectangular     |
| Order: Fortran_order     |

но незнайте что сним зделать. Просто выводите елемент вектора Y[1], Y[2], Y[3], ...

Добавлено: Чт мар 05, 2009 6:55 pm
Семен
Для вывода матриц размерности большей, чем 10х10, используйте установку вида

> interface(rtablesize=infinity); M:=Matrix(40,40);

Добавлено: Чт мар 05, 2009 8:22 pm
SA11
Да, действительно была проблема с выводом ответа. Спасибо большое, теперь все получается.