passing an array of structures to a function

7 views (last 30 days)
Mihály
Mihály on 8 Apr 2011
Answered: Taylor on 17 Jul 2025
Dear Matlab-users, I wrote a function that expects a 2D array of structures as one of its inputs, and treats this variable as such in the function body:
function bma=dcm_bma(model_posteriors,models,nSamp)
But when I try to call the function by passing such a data structure to it, I get the error message:
models =
21x8 struct array with fields:
dcm_bma(posteriors,models,1000);
??? Undefined function or method 'dcm_bma' for input arguments of type 'struct'.
How could I specify that that's exactly what I try to define it for?
Thanks for your help, Mihály
  2 Comments
Patrick Kalita
Patrick Kalita on 8 Apr 2011
When you get this error, are you sure that dcm_bma is on your path? What happens if you execute:
>> which dcm_bma
Jan
Jan on 8 Apr 2011
@Patrick: This is a very likely reason. I'd vore it, if it is written as an answer.

Sign in to comment.

Answers (1)

Taylor
Taylor on 17 Jul 2025
dcm_bma probably is not on your path
https://www.mathworks.com/help/matlab/ref/addpath.html

Categories

Find more on Structures in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!