# Applying one function in another function

2 visualizaciones (últimos 30 días)
Bartosz Bagrowski el 13 de Mayo de 2022
Respondida: Voss el 13 de Mayo de 2022
Hi guys, I have two functions:
1) function sol = CreateRandModel(model)
2) function qnew = CreateNeighbor(q,model)
as an output of my first function I get a structure sol where:
sol =
struct with fields:
sum_fburn_rand: 1.2503e+06
fburn_rand: [1×25 double]
arrival_time: [1×25 double]
In the second function I'm only intersted in the field sum_fburn_rand from the output of my first function, I would like to generate in a loop an array of 10 different values based on how this value is generated in the first function. Could you help me with code?
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

### Respuestas (1)

Voss el 13 de Mayo de 2022
CreateNeighbor()
ans = 1×10
0.3231 0.6672 0.5264 0.2974 0.2440 0.9573 0.2416 0.2394 0.1875 0.8790
function sol = CreateRandomModel()
sol = struct( ...
'sum_fburn_rand',rand(), ...
'fburn_rand',rand(1,25), ...
'arrival_time',rand(1,25));
end
function result = CreateNeighbor()
result = zeros(1,10);
for ii = 1:numel(result)
temp = CreateRandomModel();
result(ii) = temp.sum_fburn_rand;
% or, without the temporary variable 'temp':
result(ii) = getfield(CreateRandomModel(),'sum_fburn_rand');
end
end
##### 0 comentariosMostrar -2 comentarios más antiguosOcultar -2 comentarios más antiguos

Iniciar sesión para comentar.

### Categorías

Más información sobre Structures en Help Center y File Exchange.

R2021a

### Community Treasure Hunt

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

Start Hunting!

Translated by