問題タブ [gsl]

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.

0 投票する
1 に答える
1011 参照

c - Cygwin を使用して rb-gsl gem をインストールする

Cygwin を使用して Windows に rb-gsl をインストールする際に問題が発生しています。開発キットがインストールされた Windows 用の RubyInstaller を使用しています。Cygwin と GSL ランタイム、gsl-apps、gsl-devel、および gsl-doc パッケージをインストールしました。gem install コマンドを発行すると、次のようになります。

チェックしたところ、gsl_errno.h が /usr/include/gsl にあります。

0 投票する
0 に答える
1504 参照

c - GnuScientificLibraryによる多次元最小化

そのため、GSLの多次元最小化手順に問題があります(私が使用しようとしているのはですgsl_multimin_fdfminimizer_vector_bfgs2が、他の手順でも同じ問題が発生します)。ターゲット関数とその勾配を定義し、反復を開始できますが、アルゴリズムは常に同じポイントに留まります。

さて、関数または勾配のどこかに数学エラーがあると思いました。ただし、特定のデータセットについては、最適な値を知っており、これらの値を差し込むと、どこでも0の勾配が生成されます。

反復を最適な状態で開始すると、アルゴリズムは正しく停止して成功を報告しますが、開始ベクトルを最小限に乱すと、反復は永久に実行され、最適なものが見つかりません。

また、Rの関数と勾配を再実装しました。CバージョンとRバージョンが同じ入力に対して同じ出力を生成することを確認しました。RでBFGSアルゴリズムを使用すると、数回の反復で最適値が見つかります。

アルゴリズムを初期化します

反復は次のようになります。

微調整できる唯一のパラメーターは、初期ステップサイズとのライン最小化の精度ですgsl_multimin_fdfminimizer_set (gsl_multimin_fdfminimizer * s, gsl_multimin_function_fdf * fdf, const gsl_vector * x, double step_size, double tol)。異なる値を試してみると、効果はわずかですが(アルゴリズムが少し動くこともあります)、実際にアルゴリズムを動かす値は見つかりません。

提案をありがとう!

0 投票する
3 に答える
3059 参照

error-handling - GSL: エラー報告

統合にGSLを使用したい http://www.gnu.org/software/gsl/manual/html_node/Numerical-Integration.html

(例の関数 f http://www.gnu.org/software/gsl/manual/html_node/Numerical-integration-examples.html )

インテグレータにエラーを報告できます。失敗する可能性のある統合の結果である関数を統合したいと考えています。これは私のサンプルプログラムです

出力 status = 0 status = -1 になります

インテグレーターは停止してエラー コードを返す必要があると思います。どうすればこれを達成できますか?

ご助力ありがとうございます!!!

2011-04-27: Brian Gough が私に言った後、私もこの変種を試しました。

それも役に立ちませんでした。バグレポートに記入します。

0 投票する
2 に答える
1059 参照

ruby - GSLと相関

数学の計算には、GSLライブラリ1.14とルビーラッパー(gsl )を使用しています。私が必要としていることの1つは、ピアソン相関です。しかし、配列に0があると問題が発生します。

たとえば、次のコードスニペットがあります。

しかし、次の配列値を使用して計算しようとすると、NaNが得られます。

そして、この値を試してみると、次のように機能します。

誰かが理由を知っていますか?これはとても奇妙ですね。

0 投票する
1 に答える
2489 参照

c++ - Mac10.6.3でgslを使用する

最近、GSLを使用したプロジェクトがあります。GSLパッケージをMac10.6.3にインストールした後。コードをコンパイルできません。

gsllibは/usr/ local / libにあり、headファイルは/ usr /local/にあります。

コードをコンパイルすると、次のエラーが発生します。makefileで「-m32」を指定しない場合でも同じエラーが発生します。「i386」を「x86_64」に変更するだけです。誰か助けてもらえますか?

ありがとうございました!

ちなみに、上記のようなgslを含める必要がありますか?実際、私はプログラミングにまったく慣れていません。

ビルドコード:

0 投票する
1 に答える
411 参照

scientific-computing - GSL gsl_blas_sgemm 行列の乗算が n>140 で非常に不正確

gsl_blas_sgemm 関数を使用して、すべてが 1 の 150x150 行列を乗算したものをテストするだけです。最大 38 のエラーが発生します。なぜそれほど不正確なのですか?

0 投票する
1 に答える
584 参照

c - CのGSLのvoid型でdouble配列を渡す

ODE を解くために GSL ライブラリを使用しようとしていますが、void ポインターの使用に問題があります。

配列の配列を含むはずのパラメーターを送信する必要があります。

に送信されます

これは次のようにfuncjacの両方に渡されます。*params

func では、次の方法で k1 を抽出しようとしています。

また

また...

質問は次のとおりだと思います:1行の解決策はありますか?

0 投票する
2 に答える
1883 参照

c - Gnu Scientific Library を使用したカーブ フィッティングのサンプル コードは実行されません。

最小二乗フィッティングに GSL を使用しようとしていますが、例を正しく実行することさえできません。コンパイルはできますが、プログラムを実行するとエラーが発生します

dyld: lazy symbol binding failed: Symbol not found: _cblas_dnrm2

Referenced from: /usr/local/lib/libgsl.0.dylib

Expected in: dynamic lookup

問題を次の行に絞り込んだと思います

gsl_multifit_fdfsolver_set (s, &f, &x.vector);

しかし、私にはその理由が少しもわかりません。

OSX で GSL 1.15 を実行しています (最初に間違ったバージョンの 1.9 をインストールしました)。次を使用してターミナルでコンパイルします。gcc unchanged_example.c -o examplefitter -lgsl -lm

編集:解決策はここで見つかりました。コンパイル時に「 」を追加する-lgslcblasとソートされました

0 投票する
1 に答える
4856 参照

signal-processing - EEGウェーブレット分析

脳波信号の時間周波数解析をしたいのですが。ウェーブレット係数を計算するためのGSLウェーブレット関数を見つけました。その係数から実際の周波数帯域(たとえば、8〜12 Hz)を抽出するにはどうすればよいですか?GSLマニュアルには次のように書かれています。

順方向変換の場合、元の配列の要素はf_i -> w_{j,k}、パックされた三角形のストレージレイアウトで離散ウェーブレット変換に置き換えられます。ここJで、はレベルのインデックスでj = 0 ... J-1ありK、は各レベル内の係数のインデックスですk = 0 ... (2^j)-1。レベルの総数はですJ = \log_2(n)

出力データの形式は次のとおりです。(s_{-1,0}, d_{0,0}, d_{1,0}, d_{1,1}, d_{2,0}, ..., d_{j,k}, ..., d_{J-1,2^{J-1}-1})

私が正しく理解している場合、出力配列には、周波数帯域2 ^ 0 = 1 Hzの振幅が (たとえば)data[]位置に含まれています。1data[1]

等々 ...

つまり、周波数1 Hz、2 Hz、4 Hz、8 Hz、16 Hzの振幅しかありません...たとえば、5.3 Hzで振動する周波数成分の振幅を取得するにはどうすればよいですか?周波数範囲全体の振幅、たとえば8〜13 Hzの振幅を取得するにはどうすればよいですか?良好な時間-度数分布を取得するための推奨事項はありますか?

0 投票する
1 に答える
912 参照

ruby - Windows - MINGW Build GSL for Ruby-GSL

こんにちは、私は Windows 7 を使用しており、Ruby GSL http://rb-gsl.rubyforge.org/で使用できるように、GSL http://www.gnu.org/software/gsl/をインストールしたいと考えていました。

MINGW と MSYS をインストールしました。ここでバージョン 1.13 の GSL のバイナリ インストーラーを見つけましたhttp://ascend4.org/Binary_installer_for_GSL-1.13_on_MinGWしかし、最新バージョンは 2011 年 5 月 6 日にリリースされた 1.15 であるため、ビルドしてインストールするのが良いと思いましたが、インストールしませんでした。どうやって。

Windowsをインストールするように構築する方法を誰か教えてもらえますか?