Как эффективно решить миллионы независимых линейных систем 2x2 с дополнительными матрицамиPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как эффективно решить миллионы независимых линейных систем 2x2 с дополнительными матрицами

Сообщение Anonymous »

мне нужно решить миллионы до десятков миллионов независимых 2-переменных линейных систем, представленных в форме дополненной матрицы. Вход состоит из коэффициентов векторов A, B, C, A ', B', C '(каждый из которых содержит миллионы до сотен миллионов элементов). При каждом индексе I система определяется как: < /p>

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

A[i]x + B[i]y = -C[i]
A'[i]x + B'[i]y = -C'[i]
< /code>
текущий подход Python (неэффективен):
с использованием цикла для Sympy для последовательного решения каждой системы: < /p>
from sympy import symbols, Eq, solve

x = []
y = []
for i in range(len(A)):
sol = solve([
Eq(A[i]*x_sym + B[i]*y_sym, -C[i]),
Eq(A_prime[i]*x_sym + B_prime[i]*y_sym, -C_prime[i])
], [x_sym, y_sym])
x.append(sol[x_sym])
y.append(sol[y_sym])
Этот подход становится непрактичным для больших наборов данных (например, 10m+ записи) из -за чрезмерного времени вычислений.
Как я могу написать сценарий dolphindb на:

[*] Принять векторы ввода , b , cde>, cde>, cde>, cde>, cde>, cde>, cde>, cdime>, cde> B_prime , c_prime .
Вычислить x и y с использованием векторизованных/параллелизированных операций?>

Подробнее здесь: https://stackoverflow.com/questions/796 ... th-augment
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»