How to create a function using the results of the other function (using handle)?

조회 수: 1 (최근 30일)
Hi There,
I have a function with the following form:
Vms = @(n) n(1) .* W.^n(2) .*S.^n(3) ; %W and S are vectors with size [1*165].
I want to obtain another function which contains the following data from Vms:
Vms_mesh = @(x) [x(1:100)+ x(101:165) x(66: 100)];
I thourgh Vms_mesh(Vms); should gave me the results
I need to find the optimation of n later using:
Verror = @(n) sum(Vms_mesh(Vms)- AE_MS_ex ); %AE_MS_ex is experimental vector with size[1*100]
n0 = [3e-3,1,1]; %starting points for searching
minivalue = fminsearch(Verror,n0);
I don't know why but it's not working.
Hope you could help! Thanks!
  댓글 수: 3
peipei feng
peipei feng 2020년 2월 20일
Great thanks! it worked! I was so close.
peipei feng
peipei feng 2020년 2월 20일
BTW, do you mind copy your comment to the ANSWER section so I can accept your answer?

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2020년 2월 20일
Verror = @(n) sum(Vms_mesh(Vms(n))- AE_MS_ex ); %AE_MS_ex is experimental vector with size[1*100]

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by