Обобщенные векторы с использованием Sympy - PullRequest
0 голосов
/ 24 апреля 2019

Я использую Sympy для некоторых работ по теории жидкости, и я пытаюсь настроить вещи, чтобы найти величины, используя несколько уравнений. Некоторые из этих уравнений связывают переменную с ее перекрестным произведением с другим параметром / переменной.

Например:

CV = D (E + VxB)

, где C и D - константы, а V, E и B - векторы. Я хочу решить для V, в этом случае. Это было бы тривиально, зная, параллельны ли перпендикулярно V и B, но это обычно не так. Есть ли способ назначить V, E и B некоторыми общими трехмерными векторами в декартовом пространстве? (Я даже не уверен, что «обобщенный вектор» является правильным способом выражения этого ...)

Конечно, я мог бы сделать V = Vx * N.i + Vy * N.j + Vz * N.k, но это слишком сложно и может привести к слишком большому количеству ненужных переменных. Мне не обязательно заботиться о том, что x, y, z компоненты векторов.

В идеале, я бы хотел, чтобы это работало примерно так. Укажите систему координат, здесь трехмерное пространство. Затем присвойте V несколько обобщенных векторов в этой системе координат, которые здесь обозначены как «N»

.
from sympy.vector import CoordSys3D

N = CoordsSys3D('N')

V = GeneralVector('V', coordsys = N)

Это может быть функциональность уже в Sympy или каком-либо другом пакете, но я не могу понять, где он находится / как его использовать. Это вообще возможно? Любые идеи / рекомендации будут оценены!

...