2010-03-02 1 views
1

Я пытаюсь решить уравнение Пуассона в прямоугольной области, которая заканчивается линейной проблемой, например Ax = b , но поскольку я знаю граничные условия, есть узлы, где У меня есть значения решения. Я думаю, мой вопрос ... Как я могу решить разреженную систему Ax = b, если я знаю, что некоторые из координат x и неопределенные значения также зависят от них? Это то же самое, что и обычная проблема, за исключением того, что я знаю, с чего начать.Решение разреженной линейной задачи с некоторыми известными граничными значениями

Спасибо!

ответ

1

Если я правильно понял, некоторые элементы x известны, а некоторые нет, и вы хотите решить Ax = b для неизвестных значений x, правильно?

Пусть Ax = [A1 A2] [x1; x2] = b, где вектор x = [x1; x2], вектор x1 имеет неизвестные значения x, а вектор x2 имеет известные значения x. Тогда A1x1 = b - A2x2. Поэтому решите для x1, используя scipy.linalg.solve или любой другой желаемый решатель.

+0

Это, наверное, глупо спросить, но я не совсем понимаю ваши обозначения [A C] [x; y] = b. Не могли бы вы объяснить это? Ваше повторение моего вопроса звучит так, будто оно решает мою проблему =] –

+1

Извините, я использовал путаные имена переменных. См. Править. Я разбиваю вектор x на x1 и x2, и я разбиваю матрицу A на A1 и A2. –

+0

Как вы разбиваете A на A1 и A2? –

Смежные вопросы