2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Маленькие мнимые части [Mathcad Prime]
Сообщение08.04.2014, 09:16 
Аватара пользователя
При вычислении в Mathcad Prime 3.0 величины, которая должна принимать только действительные значения (магнитная проницаемость) получается, что они имеет мнимую часть порядка $10^{-21}i$. Это ошибки округления и счёта программы и я могу спокойно брать действительную часть в качестве результата, или я что-то неправильно делаю?

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 09:35 
Kitozavr в сообщении #847063 писал(а):
Это ошибки округления и счёта программы и я могу спокойно брать действительную часть в качестве результата, или я что-то неправильно делаю?
Это ошибки округления. Увеличьте количество точных десятичных знаков и посмотрите, что получится.

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 09:39 
Аватара пользователя
Kitozavr
Посмотрите в каком конкретно месте впервые появляется мнимое число, когда должно быть действительное. В результате какой операции это происходит?

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 09:49 
Аватара пользователя
nnosipov в сообщении #847069 писал(а):
Увеличьте количество точных десятичных знаков и посмотрите, что получится.
Ничего не изменилось, просто стало больше знаков.

ShMaxG в сообщении #847070 писал(а):
Посмотрите в каком конкретно месте впервые появляется мнимое число, когда должно быть действительное. В результате какой операции это происходит?
В первый раз мнимые числа появляются при нахождении собственных значений матрицы (тут мнимая часть порядка $10^{-17}i$).

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 09:54 
Аватара пользователя
Kitozavr в сообщении #847072 писал(а):
В первый раз мнимые числа появляются при нахождении собственных значений матрицы.

У этой матрицы теоретически должны быть действительные собственные значения? Можете матрицу здесь привести?

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 09:57 
Аватара пользователя
ShMaxG в сообщении #847075 писал(а):
У этой матрицы теоретически должны быть действительные собственные значения?
Наверно, это трансфер-матрица для вычисления статсуммы.
ShMaxG в сообщении #847075 писал(а):
Можете матрицу здесь привести?
Вот матрица
$$
\begin{pmatrix}
e^{A-B}  & e^{-B/2} & e^{-A} \\
e^{-B/2} &     1    & e^{B/2}\\
e^{-A}   & e^{B/2}  & e^{A+B}
\end{pmatrix}
$$

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 10:02 
Аватара пользователя
Kitozavr в сообщении #847077 писал(а):
Вот матрица

Я так понимаю, что $A$ и $B$ -- действительные числа. Тогда это симметричная матрица, а значит все собственные значения теоретически действительные. А можете показать конкретный пример матрицы, с подставленными числами, который приводит к мнимым числам (мне просто интересно)?

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 10:07 
Kitozavr в сообщении #847072 писал(а):
Ничего не изменилось, просто стало больше знаков.
Так и должно быть. Это типичная картина, свидетельствующая именно об ошибках округления.

-- Вт апр 08, 2014 14:10:28 --

ShMaxG, возьмите уравнение $x^3-3x-1=0$, у него три вещественных корня, но Maple выдаст приближённые значения с ненулевой мнимой частью, исчезающей по мере увеличения точности.

 
 
 
 Re: Маленькие мнимые части [Mathcad Prime]
Сообщение08.04.2014, 10:13 
Аватара пользователя
nnosipov в сообщении #847080 писал(а):
ShMaxG, возьмите уравнение $x^3-3x-1=0$, у него три вещественных корня, но Maple выдаст приближённые значения с ненулевой мнимой частью, исчезающей по мере увеличения точности.

Вы это к чему?

 
 
 
 Re: Маленькие мнимые части [Mathcad Prime]
Сообщение08.04.2014, 10:13 
Аватара пользователя
ShMaxG в сообщении #847079 писал(а):
Я так понимаю, что $A$ и $B$ -- действительные числа.
Да, $A =\frac{J}{T}$, $B = \frac{H}{T}$ (там ещё константа Больцмана должна быть, но я положил её равной единице, так как мне нужно не конкретное значение магнитной проницаемости, а вид графика её зависимости от температуры). $J$ - обменный интеграл, $H$ - магнитное поле, $T$ - температура.
nnosipov в сообщении #847080 писал(а):
А можете показать конкретный пример матрицы, с подставленными числами, который приводит к мнимым числам (мне просто интересно)?

Я подставил $J=1$, $H=1$, $T=300$, то есть это матрица
$$
\begin{pmatrix}
1              & 0.99833   & 0.99667 \\
0.99833   &     1          & 1.00167\\
0.99667   & 1.00167   & 1.0069
\end{pmatrix}
$$и получил мнимые собственные числа.
nnosipov в сообщении #847080 писал(а):
Так и должно быть. Это типичная картина, свидетельствующая именно об ошибках округления.
Спасибо.

 
 
 
 Re: Маленькие мнимые части [Mathcad Prime]
Сообщение08.04.2014, 10:17 
Это пример уравнения с вещественными корнями, при приближённом нахождении которых появляется мнимая часть.

 
 
 
 Re: Маленькие мнимые части [Mathcad Prime]
Сообщение08.04.2014, 10:22 
Аватара пользователя
Kitozavr
Ок. Мне было интересно это в Матлабе проверить, он выдает действительные значения в этом случае.

У меня похожие ситуации тоже случаются. Я всегда начинаю с того, что нахожу первое место, где возникают мнимые числа и пытаюсь (обычно это очень просто) обосновать, почему результат теоретически должен быть действительным (в Вашем случае матрица симметричная, поэтому собств. значения должны быть действительные). После этого со спокойной душой выделяю действительную часть.

Кстати говоря, если в Матлабе взять вектор $a=(1,2,3)$ и попробовать вычислить $\arccos{(a \cdot a / |a|^2)}$, то будет 0 с малой мнимой частью.

 
 
 
 Re: Маленькие мнимые части
Сообщение08.04.2014, 19:35 
nnosipov в сообщении #847069 писал(а):
Это ошибки округления.
Да, если Mathcad использует алгоритм для произвольных матриц.
Численные методы для задачи на с.з./с.в. для симметричных матриц (Якоби; Хаусхолдер + QR) реализуются в вещественной арифметике. Появление мнимых частей там невозможно.

 
 
 [ Сообщений: 13 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group