私はシンボリック派生エンジンを構築しています。例えばF#のコード引用をコンパイルする最新の方法は何ですか
let f = <@ fun x:double -> x * x @>
let df = der f
得られた発現のために
<@ 2 * x @>
実際の方程式は、任意に複雑になる可能性があろう。
誘導体の生成は、再帰的 パターンマッチングと変換を使用して、あまりにもハードではないですが、最終的に私が手 それらを書いていたかのようにタイトな数値ループ内 生成された数式を使用します。これは数値計算コードなので、常により速いです (可能であれば)
私はFSharpXの引用コンパイラを見ましたが、コンパイラではなくインタープリタのように見えます。
私はまた、ペンと紙でメープル、matlab、ピラブと計算法を知っています。私の質問は、コード引用をコンパイルすることでした。 – bradgonesurfing
私は、他の言語で実装しようとする代わりに、本質的にシンボリック操作をサポートする言語を使用することをお勧めします。 –
また、以前は多くの人がこれに尋ねてきました。 GoogleまたはStackOverflowで検索してください。 –