Автор работы: Пользователь скрыл имя, 12 Декабря 2011 в 22:13, курсовая работа
Аннотация
 В работе сначала приводятся основные понятия и математическое толкование разностной схемы для нелинейных уравнений переноса тепла вида  , далее приводятся разработанные в ходе исследований методы. В третьем разделе описываются работы методов и выявляются результаты. Далее делается вывод о  целесообразности применении тех или иных схем и листинги разработанных методов.
Аннотация	3
Введение	4
Раздел 1. Математическое описание основных понятий и разностных схем	5
Раздел 2. Библиотека функций, разработки	9
Раздел 3. Тестирование	11
Вывод	17
Заключение	18
Список использованной литературы	19
Приложения	20
| TeploprovodNotLine2.m | 
| function 
  [x,t,Ymain]= %l - длинна стержня %N - Разбиение сетки по пространственной координате %T - Разбиение сетки по временной координате %k_U - функция k(U) %f_U - функция f(U) %U0 - Начальное распределение температуры %U1 - Функция подачи тепла на начало стержня %U2 - Функция подачи тепла на конец стержня %E - точность вычислений %----------------------------- %создание сетки h=l/N; tau=T/K; x=[0:h:h*N]; t=[0:tau:tau*K]; coef=0.5*tau/h^2; %----------------------------- Ymain=zeros(K+1,N+1); % матрица полученных значений. Ymain(1,:)=feval(U0,x); % Вставка значений начальных условий в первую строку, где U(x,0)=f(x); Ymain(:,1)=feval(U1,t'); % Вставка значений начальных условий в первый столбец, где U(0,t)=f1(t); Ymain(:,N+1)=feval(U2,t'); % Вставка значений начальных условий в последний столбец, где U(1,t)=f2(t); U=zeros(N-1,N-1); D=1; %0-я итерация для заполнения значений для 1-й итерации... for i=1:K %заполняем ai for j=1:N          
  a(j)=0.5*(feval(k_U,Ymain(i,j+ end; %составление основной матрицы для С.Л.А.У. %диагонали, расположенные вышеи ниже главной UpDiag=(tau/h^2).*a;     U=diag(UpDiag(1,2:N-1),1)+ %Главная диагональ for j=1:N-1         
  U(j,j)=-(1+(tau/h^2)*(a(j)+a( end; % Составление правых частей для С.Л.А.У.     B=-tau*feval(f_U,Ymain(i,2:N))     B(1,1)=B(1,1)-(tau/h^2)*a(1)*     B(1,N-1)=B(1,N-1)-(tau/h^2)*a( Solution=U\B'; Ymain(i+1,2:N)=Solution'; end; %Далее запускаем итерационный процесс while(E<D) for i=1:K %заполняем ai for j=1:N          
  a(j)=0.5*(feval(k_U,Ymain(i+1, end; %составление основной матрицы для С.Л.А.У.        
  %диагонали, расположенные  UpDiag=(tau/h^2).*a;        
  U=diag(UpDiag(1,2:N-1),1)+ %Главная диагональ for j=1:N-1           
  U(j,j)=-(1+(tau/h^2)*(a(j)+a( end; % Составление правых частей для С.Л.А.У.        
  B=-tau*feval(f_U,Ymain(i+1,2:        
  B(1,1)=B(1,1)-(tau/h^2)*a(1)*        
  B(1,N-1)=B(1,N-1)-(tau/h^2)*a( Solution=U\B';        
  M=norm((Ymain(i+1,2:N)-        
  %D=norm((Ymain(i+1,2:N)- if(M<D) D=M; end; Ymain(i+1,2:N)=Solution'; end; end; figure; surf(x,t,Ymain); | 
| k_U.m | 
| function 
  ansK_U=k_U(Y) %ansK_U=Y^2; %ansK_U=1; %ansK_U=Y.^7; %степенная нелинейность ansK_U=-exp(3*Y); %экспоненциальная нелинейность | 
| f_U.m | 
| function 
  Y=f_U(U) %Y=0; %без источника %Y=sin(U); Y=0.45*U.*(1.-U); %Уравнение Фишера. %Y=0.45*U-0.1*U.^3; %Уравнение Ньюэлла--Уайтхеда (Newell--Whitehead). | 
| U0.m | 
| function 
  UX=U0(X) UX=sin(X+0.45); | 
| U1.m | 
| function 
  UT=U1(T) UT=cos(T+0.45); | 
| U2.m | 
| function 
  UT=U2(T) UT=6*T+0.9; | 
Информация о работе Численное решение уравнений теплопроводности методом разностных схем