showing error - Invalid expression. When calling a function or indexing a variable, use parentheses
4 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Nitesh Kumar Singh
am 6 Sep. 2021
Kommentiert: Nitesh Kumar Singh
am 21 Sep. 2021
Main file starts from %1: showing error - Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters.
% 1. Remodelling procedure
for i = 1:N_ele
if (emat(i,a)<101)
% CALCULATION OF DELTA RHO AND DELTA MAT
% dr (u,rho,k,B,s,adapt)
% u strain energy density
% rho density
% k reference stimulus for proximal femur
% B remodeling ratio coefficient
% s lazy zone parameter
% adapt = 0 --> step adaptation
% adapt = 1 --> linear adaptation
[d_rho(i,a), d_mat(i,a)] = dr(sed(i,a), emat(i,a)*0.02, 0.004, B(....), 0.35, 1);
% MATERIAL UPDATE
emat(i,a+1) = emat(i,a) + d_mat(i,a);
% MATERIAL CONTROL
if (emat(i,a+1)>100)
emat(i,a+1) = 100;
elseif (emat(i,a+1)<4)
emat(i,a+1) = 4;
end
else
emat(i,a+1) = emat(i,a);
end
end
*function file is called in line ([d_rho(i,a), d_mat(i,a)] = dr(sed(i,a), emat(i,a)0.02, 0.004, B(....), 0.35, 1);) which is described below
% A. Step adaptation
Function [d_rho,d_mat] = dr(u,rho,k,B,s,adapt)
d_rho = 0;
stimu = u/rho; % Stimulus
% Adaptation functions
if (adapt == 0)
% step adaptation
if stimu > k*(1+s)
d_mat = 1;
d_rho = 0.02;
elseif stimu < k*(1-s)
d_mat = -1;
d_roh = -0.02;
else
d_roh=0;
d_mat=0;
end
% B. Linear adaptation.
elseif (adapt == 1)
% linear adaptation
if stimu > k*(1+s)
d_rho = B*(u/rho-k*(1+s));
d_mat = round(d_rho/0.02);
if d_mat > 4;
d_mat = 4;
end
elseif stimu < k*(1-s)
d_rho = B*(u/rho-k*(1-s));
d_mat = floor(d_rho/0.02);
if d_mat < -6;
d_mat = -6;
end
else
d_rho = 0;
d_mat = 0;
end
else
sprintf('Wrong adaptation!')
stop;
end
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 6 Sep. 2021
[d_rho(i,a), d_mat(i,a)] = dr(sed(i,a), emat(i,a)*0.02, 0.004, B(....), 0.35, 1);
^^^^
The ... is considered a continuation indicator . Everything after it on the line is treated as a comment, and the next line is brought up and treated as if it were on the end of this line. The next line in your code is a comment -- but that comment does not close the ) started by the ( after the B
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Material Sciences finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!