How to build onto a matrix/vector in Simulink
조회 수: 3 (최근 30일)
이전 댓글 표시
I'm writing a function in Simulink as part of a simulation of galaxies that extracts velocity and position data and such. I have the outputs of the functions I used to arrive at that the outputs, which are scalars. I was trying to make a function that loads a matrix or vector and adds a new column every time I run a new simulation so I don't have to manually record the data at each interval. It uses the "from file" for input and "to file" for the output. I set the file initially to a vector of zeros. The code looks like this in the function.
function partoutput = particleadd(particles,x,partoutput)
partoutput(x) = particles
end
Particles is a scalar value that I have as an input. x is the iteration I am on, which is just an input block, and partoutput is the vector I am trying to add on to. When I run it, it gives me this error:
"Simulink does not support loading the input data in file 'partoutput.mat'. For data saved using MAT file versions prior to 7.3, Simulink can only load two-dimensional arrays consisting of one-dimensional, double, noncomplex samples. To load data of any other type, complexity or dimension, use a timeseries object and save the file using MAT file version 7.3 or later. For example, use: 'save file_name -v7.3 timeseries_object'."
The array is not three dimensional, and that code does not work that it suggest.
댓글 수: 2
답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Simulink Functions에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!