問題タブ [complex-numbers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 実数/虚数部が具象型の代わりに Numeric[T] を使用する場合、複素数のクラスを定義することは理にかなっていますか?
のようなものでしょうか
Double
sを使用する Complex クラスを作成する代わりに、s を使用するクラス、s を使用するクラスを作成して、誰もが必要な数値型を選択できるようにするのは理にかなってLong
いBigInt
ますか?
一般的でないアプローチと比較して、パフォーマンスはどのようになりますか?
plot - Mathematica による複素変数の関数の幾何学的解釈?
Mathematica でコードを記述して、次のような結果を確認するにはどうすればよいですか。
ご覧のとおり、複雑な関数w=f(z)
wherez=x+iy
とがありw=u+iv
ます。
この例では、垂直線のイメージが双曲線w=sin z
であることがわかります。x=c
(左)
水平線のイメージはy=c
楕円形です。(右)
この写真は、本「複雑な変数とアプリケーション、James Ward Brown、Ruel Vance Churchill 著」、第 8 版: 331 ページと 333 ページ、または第 3 版の 96 ~ 97 ページから引用したものです。
c++ - 大きな複素数ベクトルにスカラーを効率的に乗算するC++
私は現在、複素数の配列(std :: complexと同じように整列されたメモリですが、現在は独自のADTを使用しています)を同じスカラー値の配列で最も効率的にインプレース乗算しようとしています。複素数配列としてのサイズ。
アルゴリズムはすでに並列化されています。つまり、呼び出し元のオブジェクトが作業をスレッドに分割します。この計算は数億のアレイで実行されるため、完了するまでに時間がかかる場合があります。CUDAは、この製品のソリューションではありません。私はブーストにアクセスできるので、BLAS/uBLASを使用する可能性があります。
SIMDの方がはるかに良い結果が得られるかもしれないと思っていますが、複素数でこれを行う方法については十分に理解していません。私が今持っているコードは次のとおりです(これはターゲットマシンのコアの数に対応するスレッドにチャンクアップされていることを思い出してください)。ターゲットマシンも不明です。したがって、一般的なアプローチがおそらく最善です。
fcomplexは次のように定義されます。
最終的にループカウントは常に2の累乗になるため、手動でループを展開しようとしましたが、コンパイラーはすでにそれを実行しています(32まで展開しました)。私はスカラーへのconstfloat参照を試しました-1つのアクセスを節約すると考えて-そしてそれはコンパイラーがすでに行っていたものと等しいことが証明されました。私はSTLと変換を試しましたが、どちらのゲームも結果は近いですが、それでもさらに悪い結果になります。また、std :: complexにキャストして、乗算のスカラー*複合体にオーバーロードされた演算子を使用できるようにしましたが、最終的には同じ結果が得られました。
それで、何かアイデアを持っている人はいますか?これを検討する上で、多くの感謝を捧げます!ターゲットプラットフォームはWindowsです。Visual Studio 2008を使用しています。製品にGPLコードを含めることはできません!本当にありがとう。
java - 虚数
私は3double
秒かかり、2次式を介して根を計算する方法を持っています:
これを拡張して、虚数のサポートを追加したいと思います。どうすればこれを達成できますか? 私が最初に考えたのは、 ではelse if (discriminant < 0)
、判別式の絶対値を取得し、基数を因数分解するということでした。ルートをユーザーに出力するので、 iを気にしないでください。 iをどこに置くかを正確に知っている String パーサーがあります。より効率的な方法に関するアイデアはありますか?
string - c++ を含むファイルstringで構文エラーが発生します
エラー 3 エラー C2059: 構文エラー: ')' c:\program files\microsoft Visual Studio 10.0\vc\include\string 758 1 ECE572_001_Project1_swirl エラー 6 エラー C2059: 構文エラー: ')' c:\program files\microsoft visual studio 10.0\vc\include\string 767 1 ECE572_001_Project1_swirl エラー 1 エラー C2143: 構文エラー: ')' が 'string' の前にありません c:\program files\microsoft visual studio 10.0\vc\include\string 758 1 ECE572_001_Project1_swirl エラー 4 エラー C2143:構文エラー: 'string' の前に ')' がありません c:\program files\microsoft visual studio 10.0\vc\include\string 767 1 ECE572_001_Project1_swirl エラー 2 エラー C2665: 'swprintf': 2 つのオーバーロードのいずれも、すべての引数の型を変換できませんでしたc:\program files\microsoft ビジュアル スタジオ 10.0\vc\include\string 758 1 ECE572_001_Project1_swirl エラー 5 エラー C2665: 'swprintf': 2 つのオーバーロードのいずれも、すべての引数の型を変換できませんでした c:\program files\microsoft Visual Studio 10.0\vc\include\string 767 1 ECE572_001_Project1_swirl
このエラーは、VS2010 によって提供されるロックされたファイルであるファイル文字列にエラーがあると表示されているため、わかりません。第 2 に、私は文字列を使用していません。第 3 に、複合体を含めることがライブラリ文字列とどのように関係があるのでしょうか。
複雑なものを含めるとプロジェクト ファイルでエラーが発生しますが、それを含めてテストするためにまったく新しいファイルを開始しましたが、エラーは発生しませんでした。
image.h をインクルードする上記のステートメントを入れたところ、コンパイルのバグはなくなりました。誰かが問題を理解できる場合は、ここに image.h があります。
c++ - 離散フーリエ変換のためのC++での複素数の表現
私は現在、手動で計算したフーリエベクトルが正しいかどうかを確認するのに役立つ小さなツールを書いています。ここで、で指定されたn番目のUnityのルートが必要omega = exp(2*pi*i / n)
です。omega
誰かがこれをcomplex
C++で表現する方法を教えてもらえますか?
objective-c - C で複素数を使用して行列演算を実行する
行列演算と複雑な数学を含む計算を C で実行しようとしています。Matlab に精通しており、これらのタイプの計算を簡単かつ効率的に実行できることを知っています。たとえば、同じサイズの 2 つの行列 A と B は、それぞれが複素数値の要素を持ち、式 A+B によって簡単に合計できます。CまたはObjective Cでこれらのタイプの式をプログラミングするために推奨できるパッケージまたは手法はありますか? 複素数の操作を実行できる complex.h は知っていますが、複雑な行列の操作を実行する方法を認識していません。これが私が本当に求めているものです。同様に、行列の操作を可能にするパッケージを知っていますが、それらが複雑な行列の操作に役立つとは思いません。
objective-c - Xcode で BLAS または LAPACK を使用する
Xcode で開発した Objective C プログラムに BLAS または LAPACK 関数を組み込む方法についての良いガイドを探しています。私がオンラインで見つけた BLAS/LAPACK のプログラムのソースは Fortran で書かれたものだけです - これは紛らわしいです。BLAS/LAPACK を利用しながら、Objective C でコーディングするにはどうすればよいでしょうか? オンラインの例/ガイドはありますか? 行列の要素が複雑な値を持つ行列演算を実行できるようにしたいと考えています。
乾杯、
シャディ
python - 複素数のフォーマット
私のクラスの 1 つのプロジェクトでは、小数点以下 5 桁までの数値を出力する必要があります。出力が複素数になる可能性があり、小数点以下 5 桁の複素数を出力する方法がわかりません。フロートの場合は、次のとおりです。
print "%0.5f"%variable_name
複素数に似たものはありますか?