I am having problems in anonymous function (y=@(x)(...))

1 visualizzazione (ultimi 30 giorni)
Angus Wong
Angus Wong il 29 Apr 2019
Modificato: Angus Wong il 1 Mag 2019
Let me re-word my querry.
Let's say there is a square matrix of v=[1 2 3 4 5 6 78 9 10; 11 12 13 14 15 16 17 18 19 20;21 22 23 24 25 26 27 28 29 30;31 32 33 34 35 36 37 38 39 40;41 42 43 44 45........ 99 100] and a is a variable that prompt the user to input. It is easy to obtain a square matrix of size a by a of the original matrix v (left hand corner) with the use of w=v(1:a,1:a), of course a is less than length(v).
However, I would like to know how to do the same for anonymous functions. v in this case will be a column matrix a quantities of "@(x)(B.*[x x^2 x^3 ......]);", where [x x^2 x^3 ......] is a row matrix with a elements.
Here is an example:
Let's say v={@(x)([x x^2 x^3 x^4]; @(x)([x^2 x^3 x^4 x^5]); @(x)([x^3 x^4 x^5 x^6]); @(x)([x^4 x^5 x^6 x^7])};
if a = 3, the new v would be v={@(x)([x x^2 x^3]; @(x)([x^2 x^3 x^4]); @(x)([x^3 x^4 x^5])};
  4 Commenti
Kevin Phung
Kevin Phung il 29 Apr 2019
ok, just wanted to make sure. Also, what is x supposed to be? I think maybe it'll be easier to construct the matrix if x was an input to your function fun, instead of creating so many anonymous functions.
Angus Wong
Angus Wong il 29 Apr 2019
Modificato: Angus Wong il 29 Apr 2019
x is a variable.
The script is something like this:
clear; close all; clear;
dat=load(data);
leadingcoe=coef(dat);
yo=fun(leadingcoe);
k=input('Input a number for x');
for a=1:k
disp(yo{a}(k));
end
This is a simplified version.

Accedi per commentare.

Risposte (1)

Kevin Phung
Kevin Phung il 29 Apr 2019
Modificato: Kevin Phung il 29 Apr 2019
let me know if this is what youre trying to do with your anon functions:
function y = fun(a,x)
y = sum(triu(repmat(flip(x.^(1:a)),numel(a),1)),2)
%uncomment this if you want to see how the matrix looks like before summing the rows
%y = triu(repmat(flip(x.^(1:a)),numel(a),1))
end
  3 Commenti
Angus Wong
Angus Wong il 29 Apr 2019
This function is intended to output an anonymous function.
Angus Wong
Angus Wong il 29 Apr 2019
But thanks a lot for your hard work!

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Prodotti


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by