#include <j2k/Fred/Math/Complex.hpp>
Go to the source code of this file.
|
Definition at line 160 of file COMPLEX.CPP. |
|
Definition at line 103 of file COMPLEX.CPP. 00103 { 00104 return (Imag); 00105 } |
|
Definition at line 95 of file COMPLEX.CPP. 00095 { 00096 return (Imag = y); 00097 } |
|
Definition at line 99 of file COMPLEX.CPP. 00099 { 00100 return (Real); 00101 } |
|
Utilities /////////////////////////////////////////////////////////////////////////////.
Definition at line 91 of file COMPLEX.CPP. 00091 { 00092 return (Real = x); 00093 } |
|
Definition at line 207 of file COMPLEX.CPP. 00207 { 00208 return ( _Inf._D ); 00209 } |
|
Definition at line 211 of file COMPLEX.CPP. 00211 { 00212 double temp = (double)x; 00213 return (_Dtest(&temp) == _INFCODE); 00214 } |
|
Definition at line 216 of file COMPLEX.CPP. 00216 { 00217 double temp = (double)x; 00218 return (_Dtest(&temp) == _NANCODE); 00219 } |
|
Definition at line 221 of file COMPLEX.CPP. 00221 { 00222 return (_Nan._D); 00223 } |
|
Definition at line 61 of file COMPLEX.CPP. |
|
Definition at line 142 of file COMPLEX.CPP. 00142 { 00143 Real = Real * x; 00144 Imag = Imag * x; 00145 return (*this); 00146 } |
|
Multiplication and Division operations /////////////////////////////////////////////////////////////////////////////.
Definition at line 22 of file COMPLEX.CPP. 00022 { 00023 // Reminder: (a+bj)(c+dj) = (ac + bcj + adj + bdjj) 00024 // Result: (ac - bd) + ( bc + ad )j 00025 // jj = -1, by definition. 00026 00027 CplxNumber Temp_Re = (x.Real * y.Real) - (x.Imag * y.Imag); 00028 CplxNumber Temp_Im = (x.Imag * y.Real) + (x.Real * y.Imag); 00029 00030 x.Real = Temp_Re; 00031 x.Imag = Temp_Im; 00032 00033 return (x); 00034 } |
|
Definition at line 168 of file COMPLEX.CPP. |
|
Definition at line 125 of file COMPLEX.CPP. |
|
Definition at line 120 of file COMPLEX.CPP. 00120 { 00121 Real = Real + x; 00122 return (*this); 00123 } |
|
Definition at line 136 of file COMPLEX.CPP. |
|
Definition at line 131 of file COMPLEX.CPP. 00131 { 00132 Real = Real - x; 00133 return (*this); 00134 } |
|
Definition at line 78 of file COMPLEX.CPP. 00078 { 00079 const CplxDouble Tmp1 = right.Real / right.Imag; 00080 const CplxDouble Tmp2 = right.Imag + (Tmp1 * right.Real); 00081 00082 return JComplex( 00083 ( (left.Real * Tmp1 + left.Imag) / Tmp2 ), 00084 ( (left.Imag * Tmp1 - left.Real) / Tmp2 ) 00085 ); 00086 } |
|
Definition at line 148 of file COMPLEX.CPP. 00148 { 00149 Real = Real / x; 00150 Imag = Imag / x; 00151 return (*this); 00152 } |
|
Definition at line 36 of file COMPLEX.CPP. 00036 { 00037 // Reminder: (a+bj)/(c+dj) = (a+bj)(c-dj) / [ (c+dj)(c-dj) ] 00038 // = (ac + bcj - adj - bdjj) / (cc - ddjj) 00039 // = [ (ac + bd) + ( bc - ad )j ] / [ cc + dd ] 00040 // jj = -1, by definition. 00041 00042 // Doesn't handle Divide by Zero, but STL does it. 00043 00044 CplxNumber Temp_delta = (y.Real * y.Real) + (y.Imag * y.Imag); 00045 CplxNumber Temp_Re = (x.Real * y.Real) + (x.Imag * y.Imag); 00046 CplxNumber Temp_Im = (x.Imag * y.Real) - (x.Real * y.Imag); 00047 00048 x.Real = Temp_Re / Temp_delta; 00049 x.Imag = Temp_Im / Temp_delta; 00050 00051 return (x); 00052 } |
|
Definition at line 114 of file COMPLEX.CPP. |
|
Definition at line 108 of file COMPLEX.CPP. 00108 { 00109 Real = x; 00110 Imag = 0; 00111 return (*this); 00112 } |
|
Definition at line 164 of file COMPLEX.CPP. |
|
Definition at line 156 of file COMPLEX.CPP. |
|
Definition at line 155 of file COMPLEX.CPP. |