Консультация № 177466
25.03.2010, 21:46
0.00 руб.
0 1 1
Помогите пожалуйста нарисовать 2 графика в Maple по заданому заданию. Код программы в приложении.
Задание:
Используя метод сеток найти решение краевой задачи:
du/dt = d^2u/dx^2
u(x,0)=f(x)
u(0,t)=phi(t)
u(0.6,t)=psi(t)
x=0...0.6
h=0.1
t=0...0.01
сигма=1/6
Мои данные:
f(x)=cos(2x), phi(t)=1-6t, psi(t)=0.3624

Нужно построить 2 графика U(x,t).
Первый график должен быть 3d, а второй график: Сечения поверхности при различных t.
Изображение графиков и программу скинул на файлообменик, если нужно. http://www.megaupload.com/?d=WAT4E92R

Приложение:
restart;h:=.1: sigma:=1/6: k:=h^2*sigma:
> phi:=cos(2*x):psi:=1-6*t:
> with(Spread):
> CreateSpreadsheet(g):
SetCellFormula(g,1,1,'j_i');for i from 0 to 10 do x[i]:=i*h end do:for j from 0 to 6 do t[j]:=j*k end do:
> for i from 0 to 10 do u[i,0]:=evalf(cos(2*x[i]));
> end do:
> for q from 0 to 10 do SetCellFormula(g,1,q+2,q); end do;
> for w from 0 to 4 do SetCellFormula(g,w+2,1,w); end do;
> for j from 0 to 4 do u[0,j]:=1-6*t[j]; SetCellFormula(g,j+2,2,u[0,j]);end do:
> for j from 0 to 4 do u[10,j]:=.3624; SetCellFormula(g,j+2,12,u[10,j]); end do:
> for j from 0 to 4 do for i from 1 to 9 do u[i,j+1]:=evalf((u[i+1,j]+4*u[i,j]+u[i-1,j])*(1/6)); SetCellFormula(g,j+2,i+2,u[i,j+1]);end do; end do;

Обсуждение

Неизвестный
25.03.2010, 22:02
общий
это ответ
Здравствуйте, Azarov88.

Прикладываю подправленное решение
chisl-methods6_2.mws (21.1 кб)

по условиям задания сетка состоит из 7x7 точек
шаг по x - 0.1, диапазон - 0..0,6 (7 точек)
шаг по t - h2 *sigma (тоже 7 точек)
В 13-м Mapl-e все рисует.

5
Форма ответа