私はC++科学アプリケーションをPythonに移植していますが、Pythonを初めて使用するため、いくつかの問題が頭に浮かびます。
1)座標(x、y)を含むクラスを定義しています。これらの値は数回アクセスされますが、クラスのインスタンス化後にのみ読み取られます。メモリとアクセス時間の両方でタプルまたはnumpy配列を使用する方が良いですか?
2)場合によっては、これらの座標を使用して複素数を作成し、複素関数で評価し、この関数の実数部を使用します。この関数の実数部と複素数部を分離する方法がなく、実数部を最後に使用する必要があると仮定すると、(x、y)を格納するために直接複素数を使用する方が良いでしょうか?Pythonで複雑なものから実際のものに変換する際のオーバーヘッドはどれほど悪いですか?C ++のコードはこれらの変換の多くを実行しますが、これはそのコードの大きな速度低下です。
3)また、いくつかの座標変換を実行する必要があります。座標については、x値とy値に別々にアクセスし、変換を実行して、結果を返します。座標変換は複素平面で定義されているので、複素変数に依存するよりも、コンポーネントxとyを直接使用する方が高速ですか?
ありがとうございました