14

ある研究者が MATLAB で小さなシミュレーションを作成しました。私たちは、他のユーザーがアクセスできるようにしたいと考えています。私の計画は、シミュレーションを取得し、いくつかのものをクリーンアップして、一連の関数に変換することです。次に、それを C ライブラリにコンパイルし、SWIG を使用して Python ラッパーを作成する予定です。その時点で、小さな Django アプリからシミュレーションを呼び出すことができるはずです。少なくともそう願っています。

適切な計画がありますか? 他の誰かが同様のことをしましたか?現時点で気づいていない深刻な落とし穴があれば教えてもらえますか?

4

4 に答える 4

5

覚えておくべきことの1つは、Matlabコンパイラーは実際にはMatlabコードをネイティブマシン命令にコンパイルしないということです。スタンドアロンの実行可能ファイルまたはそれを実行する独自のランタイムエンジンを備えたライブラリにラップするだけです。Matlabをインストールせずにコードを実行したり、他の言語とインターフェイスしたりすることはできますが、それでもMatlabコードとして解釈されるため、スピードアップはありません。

于 2009-11-02T03:43:54.723 に答える
3

あまり役に立ちませんが、MATLAB シミュレーションを DLL にラップして、それを Delphi アプリから呼び出すことができたことを覚えています。本当にうまくいきました。

于 2008-08-07T20:57:20.303 に答える
2

また、最初にctypesを試してみます。

  1. Matlabコンパイラを使用して、コードをCにコンパイルします。
  2. CコードをDLLにコンパイルします。
  3. このDLLからコードをロードして呼び出すには、ctypesを使用します

最も難しいステップはおそらく1ですが、Matlabを既に知っていて、Matlabコンパイラを使用したことがある場合は、深刻な問題は発生しないはずです。

于 2008-09-26T09:55:39.700 に答える
1

おそらく、SWIG の代わりにctypesを試してみてください。もしそれが Python 2.5 の一部として含まれているなら、それは良いに違いありません :-)

于 2008-08-19T13:51:47.747 に答える