Разрешить матричное дифференциальное уравнение с разреженной матрицей и ojAlgo
Я разрабатываю инструмент развития Java с помощью ojAlgo и пытаюсь решить следующее уравнение:
где A - разреженная матрица (сейчас размер матрицы равен 2000 x 2000, она будет масштабирована позднее), A не является симметричным и использует только реальные значения.
Я провел несколько исследований и попытался найти способ решить это уравнение (используя SparseStore) на github wiki/javadoc, но я не нашел способа сделать это. Можете ли вы помочь мне найти методы / класс, который я должен использовать? Спасибо
1 ответ
В ojAlgo нет прямого / специального метода решения дифференциальных уравнений. Вы должны знать, как это сделать (используя ручку и бумагу), тогда ojAlgo может помочь вам выполнить расчеты.
Главная проблема здесь - найти собственные пары, верно?
Eigenvalue<Double> evd = Eigenvalue.PRIMITIVE.make(matrix);
evd.decompose(matrix);
Array1D<ComplexNumber> values = evd.getEigenvalues();
MatrixStore<ComplexNumber> vectors = evd.getEigenvectors();
Eigenpair pair = evd.getEigenpair(0); // One of the pairs