問題タブ [piecewise]

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 に答える
483 参照

lisp - Audacity - オーディオ レートに一致するようにナイキスト プロンプト制御レートを設定する方法は?

Audacity の Nyquist Prompt プラグインを使用して、長さが 2048 サンプルの区分線形波形を作成したいと考えています。たとえば、2048 個のサイレント (ゼロ) サンプルから始めてすべてを選択し、次のようにナイキスト プロンプトを呼び出すことで、方形パルス波を生成できます。

これは、区分線形 (pwl) 関数を使用して、時間 0、レベル 1.0 で開始し、時間 0.5 (選択範囲の中間)、レベル 1.0 まで線形補間し、すぐにレベル 0.0 にジャンプする波形を作成します。時間 1.0 まで 0.0 で続行します。

これは機能しますが、結果の波形には時間 0.5 で鋭い 1 サンプル遷移 (ステップ) がなく、代わりに ~40 サンプルにわたって 1.0 と 0.0 の間の線形ランプがあります。これは、この状況では受け入れられません。

ここでの変換は、Audacity 内で Nyquist プラグインが実際にはオーディオ レートよりもはるかに低い制御レートで実行されることを示唆しています。

実際には方形波よりもはるかに複雑な波形を作成したいので、この問題が解決したら、引き続き完全な波形を作成できます。

私の質問は次のとおりです。

  • pwl 関数をサンプル精度で制御できるように、オーディオのサンプリング レートに合わせて制御レートを調整することはできますか?
  • これは、'pwl' も呼び出す Nyquist Lisp 式にどのように組み込まれますか? 私は Lisp にまったく詳しくなく、2 つのステートメントを順番に実行する方法を理解していません。私の推測では、それを行う機能があります...

それがより理にかなっていれば、Audacity の外で Nyquist を使用できれば幸いです。

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

python - Python — numpy の区分関数に混乱する

Python で区分関数を実装しようとしています。私は numpy からかなりの数のツールを使用しているので、そこからすべてをインポートするだけです (つまりfrom numpy import *)。私の区分関数は次のように定義されます

エラーが発生しますNameError: global name 't' is not defined。なぜ定義する必要があるのか​​ わかりません。t結局のところ、t単純なラムダ関数を定義する必要はありませんLin = lambda t : t。いくつかの例ではドメインtが定義されていますが、関数がどの値で評価されるかわかりませんLinQuad。何をすべきか?

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

matlab - Matlabの多くのステップpicwise関数?

次のような区分レベル関数を生成する最も簡単な方法は何ですか

ここに画像の説明を入力

マトリックスの各レベルの高さ (y 値) と長さ (水平) を知っているとします。

つまり、最初の行はレベルレベルを示し、2 番目の行は水平方向の長さです。

また、レベル間の補間が必要です。

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

r - 少しのシミュレーションのために R で区分関数をコーディングし、データ フレームに値を格納する方法

区分関数をコードに入れ、生成された値をデータ フレームに格納する必要があります。ルールは次のとおりです。

  • Bernoulli(1/3) によって生成されるオブジェクト X があります。
  • X=0 の場合、別のオブジェクト Y が E = Exponential(1) によって生成されます。
  • X=1 の場合、Y は、E <= P の場合は E によって生成され、E > P の場合は (P + EL) によって生成されます。ここで、P は定数 (たとえば 1) であり、E から独立した EL = Exponential(Lambda) です。
  • この方法で得られた X と Y の 100 サンプルでデータ フレームを生成し、さらに、このプロセスを 10000 回実行します (つまり、10000 データ フレームを生成します)。

私はこのようなことをしようとしましたが、R を使用するまったくの初心者であるため、各要素を適切に定義する方法と、結果をデータ フレームに格納する方法が明らかにわかりませんでした。

これが私がやった「コード」です:

しかし、テストする前でさえ、それが適切に機能することは不可能であることを知っています. 作成したいデータ フレームには、X と Y の値が含まれている場合があります。

初歩的な質問かもしれませんが、よろしくお願いします。

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

matlab - MATLAB: ppval による区分多項式 (pchip) の評価

MATLAB で pchip 補間を実行しようとしています。補間は正常に機能しますが、ppval 関数を使用して (プロット用に) 曲線をチェックすると、エラー メッセージが表示され、何が問題なのかわかりません。

以前に pchip 関数を次のように使用したことがあります: yi = pchip(x,y,xi) で、問題なく動作しました。ただし、今は係数 (pp.coefs) のみが必要です。問題は、ppval 関数でチェックしようとすると意味がないように見えることです。

これは例です:

私が何か間違ったことをしている場所を理解するのを手伝ってくれる人はいますか? ありがとう!

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

python - numpy.piecewise で範囲を指定する方法 (範囲ごとに 2 つの条件)

デジタル信号処理用の区分関数を作成しようとしていますが、範囲を指定できるように numpy.piecewise を取得できません。

ここに私が入力したいものがあります:

ただし、「ValueError: 複数の要素を持つ配列の真の値があいまいです。a.any() または a.all() を使用してください」というエラーが表示されます。

関数を分析した後、問題は、この関数が次のような 2 つの条件を許可しないことです。 t < -1 and t>-2

しかし、範囲を指定できるようにすることは、多くの区分関数にとって不可欠であるように思えます。これを達成する方法はありますか?

ありがとう!