У меня есть функция, которая выводит вектор сложных собственных значений. Требуется один аргумент: rho
. Мне нужно найти rho
, для которого комплексные собственные значения лежат на мнимой оси. Другими словами, вещественные части должны быть 0.Решите функцию для действительной части = 0 вместо мнимой в MATLAB
Когда я бегу fzero()
он бросает следующую ошибку
операнды к || и & Операторы & должны быть преобразованы в логические скалярные значения.
Принимая во внимание, что fsolve()
просто решает для мнимой части = 0, что является абсолютно опосредованным из того, что я хочу.
Это функция я написал
function lambda = eigLorenz(rho)
beta = 8/3;
sigma = 10;
eta = sqrt(beta*(rho-1));
A = [ -beta 0 eta;0 -sigma sigma;-eta rho -1];
y = [rho-1; eta; eta];
% Calculate eigenvalues of jacobian
J = A + [0 y(3) 0; 0 0 0; 0 -y(1) 0]
lambda = eig(J)
Он выводит 3 собственных значений, 2 сложные конъюгаты и 1 вещественное собственное значение (со сложной части = 0). мне нужно найти rho
, для которых комплексных собственных лежат на мнимой оси, так что действительные части равны 0.
Каков допустимый диапазон ρ? Поскольку просто заполнение некоторых случайных значений не дает 1-real-and-2-conjugates, которые вы описываете ... это действительно требование? –
@RodyOldenhuis Допустимый диапазон равен rho> 0. Решение rho = 24.737, но теперь мне нужен способ получить это, чтобы работать в MATLAB – Ortix92
2 конъюгата + реальное значение начинается только при ρ> 1.34561 ... –