MATLAB Answers

0

Error: File: box.m Line: 23 Column: 21 Unbalanced or unexpected parenthesis or bracket.

Asked by Ehi Eromosele on 29 Jan 2014
Latest activity Answered by Cagas Akalin on 15 Apr 2015
function box(a,b,c)
tol=10^(-15);
X=[a;b;c];
Y=F(X);
disp(' n a b c |F(X)|');
n=0;
while (true)
changeX=-dF(X)\Y;
X=X+changeX;
Y=F(X);
n=n+1;
fprintf('%3d %21.15f %21.15f %21.15f %10.1e \n', n, X(1), X(2), X(3), norm(Y));
if norm(changeX) < tol*norm(X)
disp('Root Found'); break;
end
if n>=100
disp('Failed To Converge'); break;
end
end
end
function Y=F(X)
a=X(1); b=X(2); c=X(3);
Y = [a*b*c-181;2(a*b+a*c+b*c);a^2+b^2+c^2];
end
function J=dF(X)
a=X(1); b=X(2); c=X(3);
J=[bc,ac,ab;4b+4c,4a+4c,4a+4b;2a,2b,2c];
end

  0 Comments

Sign in to comment.

2 Answers

Answer by Azzi Abdelmalek
on 29 Jan 2014
Edited by Azzi Abdelmalek
on 29 Jan 2014
 Accepted Answer

You missed a multiplication operator * in (line 23)
Y = [a*b*c-181;2(a*b+a*c+b*c);a^2+b^2+c^2];
It should be
Y = [a*b*c-181;2*(a*b+a*c+b*c);a^2+b^2+c^2];

Answer by Cagas Akalin on 15 Apr 2015

Hi everyone,
Matlab gives the same error for the below line code because of the script in first parenthesis. - (1-x1.)^2-
If you know how to correct it, please share your suggestion...
f = @(x1,x2) (1-x1.)^2+100*(x2.-x1.^2)^2

  0 Comments

Sign in to comment.