Undefined function 'mtimes' for input arguments of type 'matlab.ui​.control.N​umericEdit​Field' error

27 ビュー (過去 30 日間)
oil_SAE = app.oil_type.Value;
Temp_in = app.Inlet_Temperature.Value;
d = app.Shaft_diameter.Value;
r = app.Shaft_radius.Value;
D = app.Bushing_diameter.Value;
N = app.Shaft_speed;
W = app.Radial_load.Value;
L = app.Bearing_length.Value;
c = (D-d)/2;
C_ratio = r/c;
P = W/(2*r*L);
Slenderness = L/d;
Sommerfeld_No_Inf = xlsread ('MFT','Temperature Rise Variable','A4:A17');
Temp_rise_inf = xlsread ('MFT','Temperature Rise Variable','E4:E17');
Temperature = xlsread ('MFT','viscosity-temperature chart','A4:A30');
if oil_SAE == 10
y = xlsread ('MFT','viscosity-temperature chart','B4:B30');
elseif oil_SAE == 20
y = xlsread ('MFT','viscosity-temperature chart','C4:C30');
elseif oil_SAE == 30
y = xlsread ('MFT','viscosity-temperature chart','D4:D30');
elseif oil_SAE == 40
y = xlsread ('MFT','viscosity-temperature chart','E4:E30');
elseif oil_SAE == 50
y = xlsread ('MFT','viscosity-temperature chart','F4:F30');
elseif oil_SAE == 60
y = xlsread ('MFT','viscosity-temperature chart','G4:G30');
elseif oil_SAE == 70
y = xlsread ('MFT','viscosity-temperature chart','H4:H30');
end
%-------------------------------------------------------------------------%
% Calculation to find average temperature and viscosity %
Tf = Temp_in + 3;
app.V.Value = interp1 (Temperature,y,Tf);
app.S.Value = (C_ratio)^2*((app.V*N)/P); error: Undefined function 'mtimes' for input arguments of type 'matlab.ui.control.NumericEditField'.
if Slenderness == 1
app.delta_T.Value = (0.349109 + (6.00940*app.S)+(0.047467*(app.S^2)))*(P*(10^-6))/0.120; % Temperature Rise(°C) at l/d=1
elseif Slenderness == 1/2
app.delta_T.Value = (0.394552 + (6.392527*app.S)-(0.036013*(app.S^2)))*(P*(10^-6))/0.120; % Temperature Rise(°C) at l/d=1/2
elseif Slenderness == 1/4
app.delta_T.Value = 0.933828 + (6.437512*app.S)- (0.011048*(app.S^2))*(P*(10^-6))/0.120; % Temperature Rise(°C) at l/d=1/4
else
app.delta_T.Value = (interp1 (Sommerfeld_No_Inf,Temp_rise_inf,app.S))*(P*(10^-6))/0.120; % Temperature Rise(°C) at l/d=Infinity
end
app.T_average.Value = Temp_in + (app.delta_T.Value/2);
** I got the error while running the app designer. These codes were written in callback function. Can somebody help me on how to fix this error?
  2 件のコメント
Jan
Jan 2019 年 7 月 26 日
Please use the buttons on top of the field for editing the message to format the code as code to improve the readability. Thanks.
By the way, you mix the code for the GUI handling and the computations. This will impede the maintenance of the code. If you separate the GUI part and the actual computations, it will be much easier to modify the GUI or the calculations, or use the function for the calculations in another code. Example:
% Inside the GUI code:
[V, S, Delta, T_avg] = YourCalculations(Temperature, C_ratio, y, Tf, ...
N, P, Slenderness)
app.V.Value = V;
app.S.Value = S;
... and so on
% And the calculations:
function [V, S, Delta, T_avg] = YourCalculations(Temperature, C_ratio, y, Tf, ...
N, P, Slenderness)
V = interp1(Temperature,y,Tf);
S = (C_ratio)^2 * V * N ) / P);
if Slenderness == 1
delta_T = (0.349109 + (6.00940*S)+(0.047467*(S^2)))*(P*1e-6)/0.120;
... and so on
end
end
Kunwar Pal Singh
Kunwar Pal Singh 2020 年 10 月 25 日
Can anyone help in coding the above equations in MATLAB?

サインインしてコメントする。

回答 (1 件)

Dennis
Dennis 2019 年 7 月 26 日
app.S.Value = (C_ratio)^2*((app.V.Value*N)/P);
You forgot the '.Value', the error message tells you that you can not multiply the handle of your edit field.
  2 件のコメント
SITI AISHAH
SITI AISHAH 2019 年 7 月 26 日
i've use 'app.S.Value' but still got the same error
Jan
Jan 2019 年 7 月 26 日
There are many occurrences of app.S in your code. Did you fix them all?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeData Distribution Plots についてさらに検索

タグ

製品


リリース

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by