what is wrong with my code?

조회 수: 3 (최근 30일)
JJ
JJ 2021년 4월 28일
편집: Jan 2021년 4월 28일
t=86400;
v=10.^-5;
D=10.^-7;
x=0:0.01:2;
%Calcuate the concentration in ( mol/l)
conc=(1./sqrt(4*pi*D*t)*exp.(-1*((x-v*t).^2./4*D)));

채택된 답변

Jan
Jan 2021년 4월 28일
편집: Jan 2021년 4월 28일
conc=(1./sqrt(4*pi*D*t)*exp.(-1*((x-v*t).^2./4*D)));
% ^
This is interpreted as "exp" beeing a struct and "(-1*((x-v*t).^2./4*D)))" is the dynamic fieldname.
Such typos are more obvious if you use spaces:
conc = 1 ./ sqrt(4 * pi * D * t) * exp(-D * (x - v * t) .^ 2 ./ 4);
The spaces avoid another ambiguity also:
a.^2./x
% Does this mean:
a .^ 2.0 / x
% or:
a .^ 2 ./ x
Although the Matlab's interpreters have strict and unique rules for these cases, a human reader can be confused.

추가 답변 (1개)

DGM
DGM 2021년 4월 28일
편집: DGM 2021년 4월 28일
Don't need a dot in exp()
conc=(1./sqrt(4*pi*D*t)*exp(-1*((x-v*t).^2./4*D)));
This is no comment on the correctness of any math, though.

카테고리

Help CenterFile Exchange에서 MATLAB Parallel Server에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by