Clear Filters
Clear Filters

I am trying to find the root mean square error(RMSE) but i am getting this error when I tried to find the output in command window 'Unrecognized function or variable 'Hot_Output'.

7 views (last 30 days)
function [OBJ] = Main_Combined_optimization(Opt_Param)
%% code Description: Main optimization Function
%%Run Model with optimization Parameters
global hot;
Data = xlsread('hotspot.csv');
hot.RecordingTime = Data(:,1);
hot.Loading = Data(:,2);
hot.HotToTopOilGradient = Data(:,3);
t = hot.RecordingTime;
K = hot.Loading;
Hot_Output = hot.HotToTopOilGradient;
%% call the optimizer
[HotSpotTemperture_Optimization] = Combined_Optimization(K,Opt_Param,t);
error_HT = Hot_Output - HotSpotTemperture_Optimization;
OBJ_HT = sum( trapz(t, error_HT.^2));
%% Calculate the RMSE
RMSE = sqrt( sum((Hot_Output(:)- HotSpotTemperture_Optimization(:)).^2) / numel(Hot_Output) );

Accepted Answer

Just Manuel
Just Manuel on 24 Feb 2021
That's a question of variable scope. Variables declared in a function are only visible within the function that declared it.
If you want to use that data after execution of the function, make it an output variable. If you just want to have a look at it for debugging, set a breakpoint in your function (go at this line: [HotSpotTemperture_Optimization] = Combined_Optimization(K,Opt_Param,t); where Hot_Temperature is already assigned.), then you will see all the variables in the workspace window.

Sign in to comment.

More Answers (0)


Find more on Graphics Object Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!