問題タブ [numerical-integration]
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.
matlab - Matlab ODE ソルバーの反復フラグ
私は次のようなODEを解いています
y''(t) + ay(t) + b = 0
Matlabのode45
ソルバーで。エラー基準を満たす解が見つかるまで繰り返します。y
比較のために各ステップの前の値を読み取りたい。
これを行う最良の方法は何ですか?
私のメインファイルは
そして、odefnc
は
python - 2 次元で odeint を使用したベクトル値関数の積分
で行われていることに類似したアプローチで、を使用してベクトル値関数の 1 次元積分についてここで与えられたアイデアodeint
を2dblquad
次元に拡張しようとしています。
以下に、私の現在の試みを示します。
残念ながら、これは機能していません...次の結果が間違っています:
matlab - 面積または体積に対する不均等にサンプリングされた関数の数値積分
いくつかの有限要素モデリング ソフトウェアから、3 次元ボリューム上の関数の値を取得しました。この機能の価値をボリュームに統合したいと考えています。問題は、FEM ソフトウェアからエクスポートされたデータが、通常のグリッド上で関数を定義するのではなく、FEM ソフトウェアで使用される (不均一な) メッシュに対応する点 (x、y、z) のコレクション上で関数を定義することです。
この統合を Matlab で行うにはどうすればよいですか?
optimization - CUDA コードの最適化。レジスタ数
みんなが見られるように、ここにいくつかのコードを貼り付けています。
基本的に、これは適応数積分器 (Romberg) です。このグローバル関数で使用されるデバイス関数は次のとおりです。
並列縮小機能:
そして最後に、私が統合しようとしている関数は(単純な関数のモックアップ)として次のように与えられます:
コードは適切に実行され、期待される積分が得られます。カーネルは次の方法で実行されます(今のところ)
質問:
nvidia ビジュアル プロファイラーを使用して、この関数のレジスターの使用状況を確認します。スレッドごとに 52 個のレジスタがあることがわかります。なぜだか分からない?このコードに含まれる変数のほとんどは共有変数です。コードのどの部分がレジスタを使用しているかを調べる方法を教えてください。
どうすればそれらを減らすことができますか? このコードでできる最適化はありますか?
ハードウェア
私は Fermi デバイス Geforce GTX 470、計算能力 2.0 を使用しています。
ありがとう、
python - Python の台形規則
x = 0 と x = pi の間の曲線 y=sin(x) の下の領域を計算する Python v. 2.7.5 を使用してプログラムを作成しようとしています。この計算を実行して、x の範囲を 1 ~ 10 の範囲で n 分割し、近似値、真の値、およびパーセント誤差を出力します (つまり、台形の数を増やすことで精度を上げます)。すべての値を小数点以下 3 桁まで出力します。
コードがどのように見えるべきかわかりません。これらの計算を行うには、約 12 行のコードしか必要ないと言われました。
Wing IDE を使用しています。
これは私がこれまでに持っているものです
正しい軌道に乗っているかどうかはわかりません。「代入前にローカル変数 'sum' が参照されました。コードを改善する方法について何か提案はありますか?」というエラーが表示されます。
matlab - 数値積分で誤差のある関数
ガウス求積法またはシンプソン求積法を使用した数値積分で重大なエラーを生成する関数を探しています。
matlab - この積分を Matlab で評価する
私は matlab で次の積分を評価しようとして
います: これ
が私のコードです:
次のエラーが表示されます。
これらのエラーはあまり意味がありません。どんな助けでも大歓迎です。私は1e5
無限を表すことにしています。