問題タブ [function-handle]
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 の関数ハンドルに行列またはベクトルを渡す
みんな!
Matlab で関数ハンドルを使用するときに問題が発生しました。
たとえば、変換行列の関数ハンドルを取得するとします。
そして私はアルファベクトルを持っています
のような結果を得たい
私は次のような方法を試しました
それらはすべて機能しません
これを行う簡単または魔法の方法はありますか?
どうもありがとう!
matlab - matlab での三項ツリーの生成
私がやろうとしているのは、非再結合三項ツリーの構造をエミュレートする一連のベクトルを生成することです。これが私のコードです:
ノード関数は次のとおりです。
さまざまなテストトライアルを実行しましたが、常に同じ問題で終了します。node.m 関数は、時間 t=2 で行ベクトルの最初の 3 つのエントリのみを編集し、他の 6 つのエントリは除外します。時間 t=1 でベクトルの次の値を取らないように、ループ内で間違いを犯したようです。
また、私が見落としていたはるかに簡単で明白な解決策がある一方で、問題を信じられないほど複雑にしている可能性もあります。
どんな助けでも大歓迎です。
string - MATLAB で再入力せずに複数の関数を組み合わせてプロットする方法はありますか?
私が現在受講しているクラスでは、かなりの量のプロットが行われています。スピードアップするために、plot の代わりに fplot を使い始めました。今、2 つの関数を再入力せずに組み合わせる方法があるかどうか疑問に思っています。
このようなもの:
これを行う機能により、デバッグと編集がはるかに簡単になり、コーディング時間を大幅に節約できます。
私が思いついたアイデアの 1 つは、関数を持ち運ぶために文字列を使用することでした。
すなわち
しかし、元に戻す方法を見つけることができませんでした (対応する ASCII 値を除く)。
別の方法として、楕円を使用して線を分割して見やすくすることもあると思いますが、それではコアの問題は解決しません。
背景や理解を深めたい場合: 以下は、プロットする必要のある関数の例です。
これらの多くは、宿題の一部として自分で導出した方程式であるため、1 つの関数の導出を間違えると、すべての関数を書き直さなければなりません。これでは、Cn と Cl (Cn と Ca を使用) が与えられましたが、Ca と Cd を自分で導出する必要があります。「ld」は単に cl を cd で割ったものです。
簡略化すると、次のようになります。
このサイトを熟読して回答を得ることができましたが、この質問または同様の質問をしている他の人を見つけることができませんでした. これに対する解決策がある別の投稿を知っている場合は、最初にそれを読んでいただければ幸いです。あなたが助けてくれることを願っています!
matlab - Multipy 関数は matlab を処理します
2 つの関数ハンドルを乗算し、結果として関数ハンドルを取得する必要があります。例:
これを行う方法?
matlab - 関数ハンドルの追加
C
MATLAB には、 n 個の関数ハンドルを含むセル配列があります@(t)
。定数x_star
を含むベクトルもあります。現在、セル配列内の場所にある関数とベクトル内の場所にある定数をn
掛け合わせた新しい関数ハンドルを作成しようとしています。私はこのコードを試してみましたが、「インデックスがマトリックスの次元を超えています」と出力するだけです:i
i
このようにすることは可能ですか、それとももっと便利な方法がありますか?
およびは次のようx_star
にC
定義されます。
matlab - ループ内の関数ハンドルのエラー (Matlab)
関数ハンドルを含むループを実行しようとしています。nに特定の値を使用すると、コードはうまく機能します。ただし、ループ内でコードを実行しようとすると、エラーが発生します。
私はMATLABに比較的慣れていないので、数時間試した後、アイデアがなくなりました...どんな助けも大歓迎です。
コードは以下です
編集
セル配列を使用してループを再構成しましたが、次のエラーが発生しています
以下は更新されたコードです。
matlab - MATLAB で定数無名関数を評価する
Matlabでは、私は一般的に次のようなことを行います
そのため、f は関数ハンドルで、xx と ff は両方とも 1x11 ベクトルです。
ただし、何らかの理由で関数ハンドル f を次のように定義する必要がある場合
xx と ff のコードを変更しない場合、xx はベクトルのままですが、ff はそうではなく、double になります。
私のコードの続きは ff が 11x1 ベクトルであると仮定しているので、これはもちろん厄介です。
したがって、私の最初の質問は、私のコードがそもそも健全であるかどうかです。もしそうなら、「定数 f」の場合に動作させるにはどうすればよいですか? そうでない場合、どのように書き直せばよいですか?
これは確かにmatlab の定数匿名関数が配列ではなく 1 つの値のみを返すことに似て いますが、そのスレッドで答えを見つけることができません。
matlab - 関数ハンドラを引数として関数を定義する
Matlabで関数ハンドラを引数として関数を定義することは可能ですか?
私は試してみました
しかし、「@」の構文が無効であるというエラー メッセージが表示されます。
matlab - MATLAB の関数で pcg を使用する方法
AX=b
MATLAB の共役勾配法を使用して、逆問題 を解きます。MATLABで関数を使用したいのですがpcg
、知っているように、行列の代わりにA
関数を使用できます。
たとえば、afun
いくつかのエントリを持つ関数があります。ドキュメントでは、エントリなしで関数afun
に関数が入力されているのを見ましたpcg
が、同じことをするとエラーnot enough input arguments
が表示されます。次のようなコードを使用します。
で関数をどのように使用すればよいpcg
ですか?
matlab - MATLAB エラー Feval には、最初の引数として関数ハンドルが必要です
私はこのコード (*) を持っています。
このエラーが表示されます:
feval の使用エラー 引数には文字列または function_handle が含まれている必要があります。
newton_raphson のエラー (10 行目) fz = feval(f,z(1));
このエラーを修正するにはどうすればよいですか?
(*)