Compute function of two variables

2 Ansichten (letzte 30 Tage)
Justin Bruh
Justin Bruh am 28 Jan. 2017
Beantwortet: Justin Bruh am 28 Jan. 2017
I have a function Ux=f(x,t) where f(x,t) is an infinite sine series (which I've truncated at 50 terms). I want to find the values of Ux at every x and t and out put it as a matrix (# of x values X #of t values), then plot a contour of where Ux is zero on a 2-D plot of x vs t (I want t on the y-axis). Here's what I've tried so far:
syms x t
%Establish An Coefficients
n=0;
for m=1:1:50
n=n+1;
if n==2
A(n)=0.5;
else
A(n)=(-4*sin(.5*pi*m))/((pi*m^2)-(4*pi));
end
end
%Determine T(t) Values for each Value of An
index=0;
for n=1:1:50
index=index+1;
T(index)=exp(-(n^2)*(pi^2)*t);
end
%Find values of X'(x)
index=0;
for n=1:1:50
index=index+1;
dX(index)=(A(n))*(n*pi)*cos(n*pi*x);
end
Ux=(sum(dX.*T));
x=.2:.01:.75;
t=0:.005:.5;
Flux=eval(Ux);
[A,B] = meshgrid(x,t);
v=[0,0];
figure
contour(A,B,Flux,v)
so x is 1 X 56 matrix and t is a 1 X 101 matrix. My understanding is that to make the contour part work I need 'Flux' to output as a 56 X 101 matrix. I keep getting the following error:
Error in sym/eval (line 11)
s = evalin('caller',vectorize(map2mat(char(x))));
Error in zeroflux (line 42)
Flux=eval(Ux);
  2 Kommentare
Jan
Jan am 28 Jan. 2017
Is this the complete error message? It tells only, where the problem occurres, but not, what the problem is.
Justin Bruh
Justin Bruh am 28 Jan. 2017
That is the complete error message

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Justin Bruh
Justin Bruh am 28 Jan. 2017
I've figured it out. Everything down to the end of the 3 loops is the same. Then I added this fourth loop:
index1=0;
index2=0;
for t=0:.005:1
index1=1+index1;
index2=0;
for x=0:0.01:1
index2=index2+1;
Ux(index1,index2)=eval(sum(dX.*T));
end
end
x=0:.01:1;
t=0:.005:1;
[A,B] = meshgrid(x,t);
v=[0,0];
figure
contour(A,B,Ux,v)

Kategorien

Mehr zu Line Plots 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!

Translated by