Hi, I am using simulink to calculate ballistics flights. Until now a used : [time, state, output]=sim ('ballistic_flight_3',15); within an m-file In this m-file the input for the simulation were given in nromal way: nameVar=valueVar now in a next step I had to change this m-file to a function, the function is normally identical to the m-file, all teh same variables are used and assigned the same values within the function function [FlightDistMat,FlightDistSim]=CompareBallisticFu(LaunchAngleDeg,HorLaunchSpeedMps,DiamM, UseSimulink) For ..... Cr=0.44; HorStartPos=0; HorVertPos=1; .... [time, state, output]=sim ('ballistic_flight_3',15); ... end Now I get error on the line were I call: [time, state, output]=sim ('ballistic_flight_3',15); Error evaluating parameter 'Value' in 'ballistic_flight_3/Cr': Error using ==> sim Undefined function or variable 'Cr'. The strange this is : if I run the m-file first and then I try calling the function again, it works, So I found that if I load the vars in the workspace first it worksn while those same vars are defined in the function??? Looking for solutions on the internet I looked at 'Initialising Simulink Model Parameter Variables using Callbacks' but I was not able to solve my problem also tried setting the model workspace via the model explorer but I think that is the wrong way because some of the values are changed in my function for each time that I call the simulation
Kshitij Singh answered .
2025-11-20