問題タブ [imsl]
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.
c# - C# で IMSL MCHOL (Fortran) からコレスキー分解を置き換える
Fortran プログラムを C# に変換しています。これは、途中で概念実証を行いながら、少しずつ行う必要があります。
これらの最初のステップの 1 つは、使用する IMSL 機能を複製することです。幸いなことに、いくつかの選択されたもののみを使用します。いくつかの自明な乱数生成、いくつかの自明な正規分布反転だけでなく、それほど自明ではない 1 つの MCHOL も使用します。
ドキュメントから:
実対称行列 A と対角行列 D の上三角分解を計算します。D は、A + D を非負定値にするために、コレスキー分解中に順次決定されます。
ルーチン MCHOL は、A + D のコレスキー分解 (RTR) を計算します。ここで、A は対称であり、D は、A + D が非負定値となるような十分に大きな対角要素を持つ対角行列です。このルーチンは、Gill、Murray、および Wright (1981 年、108 ~ 111 ページ) によって説明されたルーチンに似ています。ただし、ここでは A + D が特異であることを許可します。
(リンク先に詳細とサンプルがあります)。
概念実証のために、MCHOL ドキュメントのサンプルで提供されている結果を複製できるようにする必要があります。サンプルから次のマトリックスを渡します。
そして、見返りとして次のものを取得します。
これまでのところ、Math.NETを使用してみましたが、正定値ではないため、この例の行列では実行されません。
ALGLIB の一部、特にspdmatrixcholeskyも試しました。うまくいくように見えますが、マトリックスの一部に対してのみです:
ここで私が間違っていることを誰かが知っていますか? ここで別の関数を呼び出す必要がありますか?
簡単な答えはカードにないように見えるので、基礎となる数学を理解して、少なくともここで何が起こっているのかを理解しようとするのが最善かもしれません. 理論的な根拠や指針も高く評価されています。
fortran - IMSL 使用時の MKL エラー
MKL を使用した Intel Virtual Fortran で IMSL を使用しています。IMSL のルーチンを使用しようとしました。正常にコンパイルされましたが、ファイルを実行しようとすると、次のようなエラーが発生しました。
以下は私が使用しているコードです:
この問題を解決するにはどうすればよいですか?
USE EVCRG_INT を追加した後
エラー情報が表示されます:
ありがとう。
IMSL USER'S GUIDE には、次のように書かれています。
matlab - 変数を Fortran IMSL neqnf 非線形方程式ソルバーに渡すにはどうすればよいですか?
MATLAB プログラムを Fortran に変換する作業を行っています (MATLAB の機能の一部を利用しながら)。IMSL で利用可能なルーチンを利用しようとしています。非線形方程式ソルバー neqnf を提供しますが、サブルーチンがいつ呼び出されるかによって変化する変数を渡す方法を理解できませんでした (たとえば、MATLAB の fsolve でできるように)。たとえば、以下は、neqnf を呼び出す Fortran で記述された MATLAB の mexFunction です。サブルーチン sub には、解くべき連立方程式が含まれています。2 つの線形方程式の係数と切片の変数を neqnf から sub に渡すにはどうすればよいですか?
ありがとう!
fortran - IMSL ライブラリで nconf 関数を使用する場合、このエラーを処理するにはどうすればよいですか?
nconf
IMSL ライブラリの関数を使用して、制約付き非線形最適化問題を解きました。発生したエラーを説明するために問題を単純化しました。
目的関数はlog(x1 * x2 - x3 ^ 2)
です。制約はx1 * x2 - x3 ^ 2 > 0
. Fortran コードは次のとおりです。
コードを実行すると、制約が機能しません。 nconf
を検索します(x1, x2, x3)
がx1 * x2 - x3 ^ 2 < 0
、プログラムは例外をスローします。x1 * x2 - x3 ^ 2
関数にありlog
ます。マイナスにはなりません。制約が機能する場合、x1 * x2 - x3 ^ 2
負であってはなりません。nconf 関数の検索ポイント x と制約のしくみがわかりません。
fortran - FORTRAN 77 NEQNF IMSL ソルバー、2 変数、6 式
NEQNF を使用して、6 つの非線形方程式系を解こうとしています。システムを解決するには、2 つの変数を決定する必要があります。説明によると、「X」(変数)と「F」(方程式)の長さである「N」を定義する必要があります。
これは、X=F の場合にのみこのソルバーを使用できるということですか? 以下の説明の例では、N は整数として定義されているためです。
または、N をベクトルとして定義できますか? この場合、N の宣言はどのように見えるはずですか?
java - 時系列データを使用した予測の Java コード
ハードコードされた値の単純な予測プログラムを作成する必要があります。rougrwave には Java 用の IMSL ライブラリと JMSL があることがわかりましたが、ダウンロードできる場所が見つかりません。
ただし、ライブラリはダウンロードできません。これを回避する他の簡単な方法はありますか?
chat - mIRC ソケットが URL からテキストを読み取る
私は mIRC を使用して URL から短いテキスト行を読み取り、誰かが !test と入力したときにそれをエコー/チャットに書き込もうとしています。
私のPCのwampで実行されているため、ソケットホストはXXXXXXXXXXXXです。
ページのデータは長くありません。ここにページがあります。
SnOwEfLaKe の戦場 4(pc) 統計 | ランク: 140 | キル: 66393 | K/D: 2 | 幅/長さ: 1.38 | スコア: 60646533 | プレイ時間: 53.27 日 | 精度: 14.17%
運がない
fortran - CodeBlocks の gfortran を使用した IMSL ライブラリの `linrg_` への未定義の参照
Code::Blocks の gfortran で IMSL ライブラリを使用するには? それらをビルドした後、プログラムに問題がありました。ビルド後のメッセージは次のとおりでした: `linrg_' への未定義参照
私のコードは次のとおりです。
visual-studio-2010 - 引数とプロシージャのエラー
IMSL ライブラリに含まれているサブルーチン ( neqnf
) を使用する必要があります。これにより、非線形システムを解くことができます。(ユーザーマニュアルへのリンク、ここの neqnf ページ)
main.f90
は、次のとおりです。
ここで、サブルーチン FCN は外部モジュールでコーディングされていますmodx.f90
。
しかし、次の 3 つのエラーが発生します。
注意: すべてのコードをメイン プログラムに入れると、すべてうまくいきます。モジュールを使用してコーディングすると(私が行ったように、実際に投稿されたコード)、そのエラーが発生します!誰でも私を助けることができますか?
fortran - NEQNF から適切な数値解を選択するにはどうすればよいですか?
私は使用して呼び出す関数(NEQNF
ここのマニュアルページ)を使用しています
SYSTEM_OF_EQUATIONS
方程式を含むサブルーチンはどこですか
Fortran の IMSL ライブラリから、5 つの方程式で 5 つの未知数を持つ非線形システムを解くことができます。複数の解 (私のシステムを解く実数または複素数の 5 つの数のカップル) が存在するため、どのカップルを解として「使用」するかをどのように選択できますか?
既に入力されているシステムの一部 (この例では、2 つの方程式の未知数は 2 つだけで、他の変数は一定です) にオンライン ソルバーをリンクすると、複数の解が存在することが簡単にわかります。
私の問題を締めくくるには、他の変数を正にする変数のカップルを選択する必要があると言えます。そのため、カップルを選択する方法は簡単なチェックです。