英語フランス語スペイン語

Ad


OnWorksファビコン

Harminv - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターを介して、OnWorks の無料ホスティング プロバイダーで Harminv を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド Harminv です。

プログラム:

NAME


Harminv - 時系列データからモード周波数を抽出する

SYNOPSIS


危害 [オプション] ... [周波数分-周波数最大] ...

DESCRIPTION


危害 「高調波反転」の問題を解決するために設計されたプログラムです。
正弦波 (「モード」) の合計で構成される系列、それらの周波数を抽出し、
振幅。 また、指数関数的に減衰する正弦波の場合も処理できます。
その場合、減衰率も抽出します。

危害 多くの場合、フーリエよりもはるかに高い精度とロバスト性を実現できます。
基本的に、入力に対して特定の形式を想定しているためです。

VAで説明されているように、低ストレージの「フィルター対角化法」(FDM)を使用します
マンデルシュタムと HS テイラー、「時間信号の高調波反転」 J. CHEM。 物理学 107,
6756 (1997)。 正誤表も参照してください。 同上 109、4128(1998)

入力


危害 標準から空白で区切られた実数または複素数のシーケンスを読み込みます
入力、および XNUMX つ以上の周波数範囲を示すコマンドライン引数
検索し、データから抽出したモードを出力します。 (優先的に見つけます。
指定した周波数範囲内のモードですが、外部の追加モードが見つかる場合があります
その範囲の) データは等間隔の時間間隔に対応する必要がありますが、
ポイント数に制限はありません。

入力の複素数は、次の形式で表現する必要があります RE+IMi (空白なし)。
それ以外の場合、空白は無視されます。 また、「#」で始まり、
行末は無視されます。

典型的な呼び出しは次のようなものです

Harminv -t 0.02 1-5 < 入力.dat

これは、0.02 時間間隔 (ms 単位、たとえば、
50 kHz に対応)、周波数範囲 1 ~ 5 kHz でモードを検索します。 (見る
単位については後述します。)

出力


危害 モードごとに XNUMX 行ずつ、コンマで区切られた XNUMX つの列を標準出力に書き込みます。
周波数、減衰定数、Q、振幅、位相、および誤差。 各モードは、
次の形式の関数:

振幅 * exp[-i (2 パイ 周波数 t - ) - 崩壊 t]

ここで、i は sqrt(-1)、t は時間 (単位については以下を参照)、および
出力列は次のとおりです。

周波数
モードの頻度。 上の表現でわからない場合は、
オイラーの公式を思い出してください: exp(ix) = cos(x) + i sin(x)。 注意してください
複雑なデータでは、正の周波数と負の周波数が区別されます。

崩壊 定数
によって示される指数関数的減衰定数 崩壊 上記の式で。 の
これの逆は、モードの「寿命」と呼ばれることがよくあります。 「半減期」は
ln(2)/崩壊.

Q 減衰寿命の従来の無次元表現: Q = pi |周波数|
/ 崩壊. 「品質係数」を表す Q は、
exp(-2 pi) で減衰するモード (振幅の XNUMX 乗) の「エネルギー」。 同等に、
パワー スペクトル (|フーリエ変換|^2) を見ると、1/Q は分数です。
半値でのピークの幅。

振幅
正弦波の (実数、正の) 振幅。 振幅(および位相)
情報は一般に、周波数と減衰よりも正確ではないようです。
定数。

上記の式で与えられる、正弦波の位相シフト (ラジアン単位)。

エラー (複素) 周波数の相対誤差の概算。 これではありません
ただし、実際にはエラーバーであるため、性能指数として扱う必要があります
(小さいほど良い)各モード。

スプリアス モード


通常、harminv は、目的のソリューションに加えて、多くの偽のソリューションを見つけます。
ソリューション、特にデータにノイズがある場合。 このようなソリューションの特徴は、
エラー、小さな振幅、および/または小さな Q (大きな減衰率/広い線幅)。 あなたはできる
以下に定義するエラー/Q/振幅スクリーニング オプションにより、出力からこれらを省略します。

デフォルトでは、エラー > 0.1 および Q < 10 のモードは自動的に省略されますが、
より厳しい制限を設定する必要があります。

単位


入力と出力の両方の周波数 (および減衰) 値は、1/時間の単位で指定されます。
ここで、時間の単位はサンプリング間隔によって決まります dt (間の時間
連続入力)。 dt で指定しない限り、デフォルトは 1 です。 -t dt オプションを選択します。

つまり、いくつかの単位 (上記の例では ms など) を選択し、それらを使用して
時間ステップ。 次に、一貫性を保ち、これらの単位の逆数 (たとえば、kHz = 1/ms) を使用します。
周波数。

頻度は通常の 1/期間の定義であることに注意してください。 それは角周波数ではありません。

OPTIONS


-h コマンドラインオプションと使用法に関するヘルプを表示します。

-V のバージョン番号と著作権情報を出力します 危害.

-v 詳細出力を有効にし、コメント行として標準出力に出力します (
"#" キャラクター)。 また、入力内の「#」コメントはすべて出力にエコーされます。

-T コマンド ラインで周波数範囲の代わりに期間範囲を指定します (単位は
によって指定された時間に対応する -t)。 出力は依然として周波数であり、
ただし、ピリオドではありません。

-w 周波数の代わりに角周波数を指定し、角周波数を出力する
頻度の代わりに。 (角周波数は、周波数に 2 pi を掛けたものです)。

-n Harminv で使用される周波数 (および位相) 規則の符号を反転します。 (記号
頻度の重要性は、複素数値の入力データがある場合にのみ重要です。
正と負の周波数振幅が異なる場合があります。)

-t dt サンプリング間隔の指定 dt; これにより、全体で使用される時間の単位が決まります
入力と出力。 デフォルトは 1.0 です。

-d d スペクトルの「密度」を指定します d 密度が 1 のモードを検索する
通常のフーリエ分解能を示します。 つまり、基底関数の数
(これはモード数の上限を設定します) によって与えられます。 d 回数(周波数最大 -
周波数分)回 dt データセット内のサンプル数の倍。 最大 300
ただし、行列が大きくなりすぎるのを防ぐために使用されます (強制的に
より大きな数 -f、 未満)。

出力の周波数分解能は スペクトルによって制限される
密度であり、一般にフーリエ分解能よりもはるかに大きくなる可能性があります。 の
密度は、最大でいくつのモードを検索するかを決定します。
帯域幅が最初にモードを「検索」する密度。

デフォルトの密度は 0.0 です。これは、基底関数の数が
-f (デフォルトは 100) によって決定されます。 これは多くの場合、はるかに大きな
通常のフーリエ解像度よりも密度が高くなりますが、結果として得られる特異点は
システム マトリックスは、harminv によって自動的に削除されます。

-f nf 下限を指定する nf スペクトル基底関数の数 (デフォルトは
100)、検索するモード数の下限を設定します。 このオプションは
多くの場合、基底関数の数を指定するより便利な方法です。 -d
これがデフォルトの理由です。

-f また、300 を超える基底関数を使用することもできますが、注意してください。
計算時間は O(N nf) + O(nf^3) としてスケーリングされます。ここで、N はサンプル数です。
非常に大きな行列も精度が低下する可能性があります。

-s sort
出力のソート方法を指定します。 sort の一つである
周波数/エラー/Q/減衰/振幅。 (の最初の文字のみ sort 重要です。)
すべてのソートは昇順です。 デフォルトでは、頻度でソートされます。

-e 誤る エラー (上記参照) より大きいモードを省略します。 誤る 倍の最大誤差
計算されたモードの中で。 デフォルトは無制限です。

-E 誤る エラー (上記参照) より大きいモードを省略します。 誤る。 デフォルトは 0.1 です。

-F 指定された範囲外の周波数を持つモードはすべて省略します。 (そのようなモードはありません
ただし、必ずしも偽物です。)

-a amp 振幅 (上記参照) より小さいモードは省略します。 amp 最大振幅の倍
計算されたモードの中で。 デフォルトは無制限です。

-A amp 振幅 (上記参照) より小さいモードは省略します。 amp. デフォルトは無制限です。

-Q q |Q| で任意のモードを省略します。 (上記参照) より小さい q。 デフォルトは 10 です。

onworks.net サービスを使用してオンラインで Harminv を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad