フィルターのクリア

How to define following function?

1 回表示 (過去 30 日間)
Ajay Goyal
Ajay Goyal 2017 年 2 月 6 日
コメント済み: the cyclist 2017 年 2 月 6 日
I have two row vectors (say A1(1:5) and B1(1:5)). I wish to define a function 'a(t)' as given below. I am repeatedly getting error "Matrix dimensions must agree.". Can anyone help?
a=@(t) A1.*cos(B1*t) For ease: A=[1 2 3 4 5]; B=[9 1 2 6 4]
  1 件のコメント
the cyclist
the cyclist 2017 年 2 月 6 日
This code works just fine for me.
A1=[1 2 3 4 5];
B1=[9 1 2 6 4];
a = @(t) A1.*cos(B1*t);
What are you trying to do next? Can you post the code that actually gives the error?

サインインしてコメントする。

回答 (1 件)

Star Strider
Star Strider 2017 年 2 月 6 日
Try something like this:
A = [1 2 3 4 5];
B = [9 1 2 6 4];
[A1,B1] = meshgrid(A,B);
a = @(t) A1.*cos(B1.*t);
The function works for single values of ‘t’. You will have to evaluate ‘a(t)’ in a loop, because it produces a matrix (obviously) for every value of ‘t’. I leave that to you, because I do not know what you want to do with your function.

カテゴリ

Help Center および File ExchangeNonlinear Optimization についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by