Troubleshooting Complex Number Formulas in Matlab

Click For Summary
Complex number calculations in Matlab can yield inconsistent results when formulas are rearranged, even if they are mathematically equivalent. This issue often arises from multi-valued complex functions, such as logarithms, where software defaults to the principal branch, potentially leading to discrepancies. The discussion highlights the difficulty in troubleshooting without specific examples and suggests that errors may stem from minor mistakes in the code, especially given the complexity of the expressions. Utilizing computer algebra systems like Mathematica could aid in resolving these issues by allowing for simultaneous tracking of numerical and analytical forms.
hokhani
Messages
572
Reaction score
20
One problem I sometimes encounter is with complex numbers. When a formula including functions of complex variables runs in Matlab, I obtain the corresponding result but if I write that formula in different forms (for example when I arrange the long formula in simpler form) I obtain another result. I always check the equality of these formulas and I am confident that they are mathematically the same. I haven't found yet the source of this problem.
 
Physics news on Phys.org
It is difficult to troubleshoot without any specific examples - could you perhaps provide one such instance? Sometimes these issues arise when you perform certain multi-valued complex map operations such as taking the logarithm. In these instances, there may be non-equivalence because these software are automatically programmed to take the principal branch.
 
In the attached file I have written the two same formulae which give different values numerically.
 

Attachments

These expressions are hideous. I haven't checked the algebra, but I'm just going to assume they're correct for now. At first glance, I don't think I see anything that could likely cause the issue (unless q_{I} and q_{II} are some funny functions). Especially as the expressions are so ugly, might it have been possible that you've made a small mistake in the code somewhere?
Computer algebra systems like Mathematica would probably help greatly in the troubleshooting as well, since you can trace both the numerics and analytical forms at the same time.
 

Similar threads

  • · Replies 13 ·
Replies
13
Views
1K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 5 ·
Replies
5
Views
3K
  • · Replies 12 ·
Replies
12
Views
3K
  • · Replies 2 ·
Replies
2
Views
2K
  • · Replies 5 ·
Replies
5
Views
2K
Replies
6
Views
1K
  • · Replies 13 ·
Replies
13
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 18 ·
Replies
18
Views
4K