Как вывести матричную форму квадратного уравнения с помощью Sympy или другого

Есть ли способ конвертировать это? Например, из этого уравнения:

К этой матричной форме:

Нам особенно хотелось бы, чтобы эти матрицы были обведены красным.

Вот код, который у меня есть на данный момент:

from sympy import *
x, y = symbols('x y')
expr = 0.5 * (x**2) + 3*x + 4*y
print(latex(expr))

Я приветствую предложение, отличное от Simpy (без MATLAB, пожалуйста).

В конце дня я хотел бы использовать его с CVXOPT или Scipy.

1 ответ

Я не могу дать вам никакого кода на Python, но я могу объяснить, как получить матрицы и вектор:

Ваша форма:

                     T                           T
f(x, y) = 1/2 * | x |  * | a  b | * | x | + | d |  * | x |
                | y |    | b  c |   | y |   | e |    | y |

Это равно:

f(x, y) = 1/2 * a x^2 + b * xy + 1/2 * c y^2 + d x + e y

Так что вам просто нужно поместить коэффициенты в правильные позиции в матричной форме (a = 2 * coefficient of x^2, b = coefficient of xy, etc.).

Другие вопросы по тегам