Borrar filtros
Borrar filtros

Create a function handle sum of other function

5 visualizaciones (últimos 30 días)
Pascal Denis
Pascal Denis el 14 de En. de 2022
Comentada: Pascal Denis el 14 de En. de 2022
Hello everybody,
I try to create a function as sum of other functions, using data vectors of different size inside.
p = [0.1; 0.2; 0.3; 0.4] % p(i) is the weight associate
I get the from a Database a 4 x 6 parameter Matrix
C = [Data_11 Data_12 Data_13 Data_14 Data_15 Data_16
...
Data_41 Data_42 Data_43 Data_44 Data_45 Data_46];
I'm using an external function : func_ext(x, C_par)
— x is a scalar
— C_Par a 1x6 vector
I would like to create the following function handle as an inline function :
, where A is a constant
Do you have an idea ?
Thanks for help.
  2 comentarios
Stephen23
Stephen23 el 14 de En. de 2022
It looks like the core of that is actually a basic matrix multiplication.
When you write that you " to create the following function" do you mean a function in the MATLAB sense (e.g. a function handle) or just an array of values?
Pascal Denis
Pascal Denis el 14 de En. de 2022
I'm mean function Handle not an array of values

Iniciar sesión para comentar.

Respuesta aceptada

Rik
Rik el 14 de En. de 2022
Your anonymous function will become more opaque and I expect the performance to suffer, but this will work:
fun=@(x) A;
for i=1:size(p,1)
fun=@(x) fun(x) + ...
p(i)*func_ext(x,C(i,:));
end
Although I would suggest using a different loop variable than i. You have the entire alphabet, so why use something that could be confused with sqrt(-1).

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by