VectorUtil
Класс VectorUtil используется для работы с векторами.
Для импорта данного класса используйте:
import ru.biosoft.physicell.biofvm.VectorUtil
Все члены класса VectorUtil представлены ниже.
Член класса |
Описание |
|---|---|
static double[] newDiff(double[] vector1, double[] vector2) |
vector1 - трехмерный вектор.
vector2 - трехмерный вектор.
Возвращает трехмерный вектор, являющийся покоординатной разницей векторов vector1 и vector2.
Пример использования.
|
static double norm(double[] vector) |
|
static double norm_squared(double[] vector) |
|
static double[] newNormalize(double[] vector) |
|
static void normalize(double[] vector) |
|
static double dist(double[] vector1, double[] vector2) |
vector1 - трехмерный вектор.
vector2 - трехмерный вектор.
Возвращает расстояние между векторами vector1 и vector2.
Пример использования.
|
static double[] newProd(double[] vector, double const) |
vector - трехмерный вектор.
const - число.
Возвращает трехмерный вектор res_vector следующего вида:
res_vector[i] = const*vector[i],
где i - каждая координата векторов res_vector и vector.
Пример использования.
|
static double[] axpy(double[] vector1, double const, double[] vector2) |
vector1 - трехмерный вектор.
const - число.
vector2 - трехмерный вектор.
Возвращает трехмерный вектор vector следующего вида:
vector[i] = vector1[i] + const*vector2[i],
где i - каждая координата векторов vector, vector1 и vector2.
Пример использования.
|
static void zero(double[] vector) |
Справка по операциям с векторами
Покоординатная разница векторов
Покоординатная разница векторов — это операция вычитания векторов, при которой вычитаются соответствующие компоненты (координаты) векторов.
// Дано
Vector3D a = new Vector3D(5, 3, 7);
Vector3D b = new Vector3D(1, 2, 4);
// Покоординатная разница
Vector3D difference = a.subtract(b); // Результат: (4, 1, 3)
L2-норма вектора
L2-норма вектора (евклидова норма) — это стандартный способ измерения длины вектора. Рассчитывается как квадратный корень из суммы квадратов всех компонент вектора.
Для вектора v = (v1, v2, ..., vn) в n-мерном пространстве:
Нормализация вектора
Нормализация вектора — это преобразование вектора в вектор единичной длины (с L2-нормой, равной 1), сохраняющий его направление.
Нормализованная версия вектора v = (v1, v2, ..., vn) представляет собой вектор v`, каждая координата которого меньше соответствующей координаты вектора v в L2-норму этого вектора:
Расстояние между векторами
В двумерной системе координат расстояние (d) между векторами A(x1, y1) и B(x2, y2) вычисляется следующим образом:
В трехмерной системе координат расстояние (d) между векторами A(x1, y1, z1) и B(x2, y2, z2) вычисляется следующим образом: