2016-09-14 8 views
-2

matlabの関数に問題があります。3つのフィルタ(ハイパス、ローパス、バンドパス)を使用するイコライザが必要です。このフィルタを行うために3つの異なるスクリプトを作成しました、今私はイコライザの私の主なプログラムは、この3つのスクリプトを呼び出す、誰かがこれを行う方法を知って欲しいですか?私はインターネットで奴隷をしたけど、助けてくれるものは何も見つかりませんでした。MATLABでカスタム関数を作成

+0

で見つけることができ – Rotem

+0

は、[関数やスクリプト]については、MATLABドキュメントを見てください...最初の関数の出力は、次のものを入力するために作成します(HTTP ://se.mathworks.com/help/matlab/programming-and-data-types.html) – NLindros

答えて

0

あなたが正しく理解していれば、あなたが作成したフィルターを関数として渡して、処理を行うスクリプトに渡したいと思っています。これは、関数ハンドルを引数として渡すことでかなり簡単に行うことができます。 、関数do_processingで

do_processing(@high_pass_filter, arguments); 

それを:たとえば、あなたがhigh_pass_filter(ファイルhigh_pass_filter.mで書かれた)と呼ばれる機能を持っている場合は、のようなものを使用して関数に引数として渡すことができます(すなわちhigh_pass_filter.mを実行)フィルタを適用するには、その後

function do_processing(filter, arguments) 

のようなその定義のものとして、あなただけの、あなたが呼び出すことができます

filter(arguments_for_filter_function); 

を書く必要がありました3つの異なるフィルタに対して同じ処理機能を提供します。

関数ハンドル上の

詳細はthis page of the Matlab documentation

関連する問題