2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение27.10.2010, 15:29 


26/12/09
104
Москва
Спасибо огромное, теперь у меня, кажется, получилось то что нужно! По крайней мере выглядит очень похоже на правду :-)
Делаю так вот:
Код:
function [  ] = Temp( T1,T2,T0,A,L )

s=figure;
step=0.1;
t=0;
h=1;
Ti=T0*ones(L,1);
Tk=T0*ones(L,1);
colormap(bone);

while ishandle(s)
    Ti(1)=T1;
    Ti(L)=T2;
    Tk(1)=T1;
    Tk(L)=T2;
    for x=2:h:(L-1)
        Tk(x)=(A*step/h^2)*(Ti(x-1)+Ti(x+1)-2*Ti(x)) + Ti(x);
    end
    image(Ti);
    Ti=Tk;
    t=t+step;
    pause(step);
end

end


Теперь задали реализовать это же на С++... Но, думаю, теперь уже справлюсь))

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение30.10.2010, 17:11 


22/10/10
6
Kafari
Ты написала программку?

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение30.10.2010, 20:51 


26/12/09
104
Москва
Да. Она двумя сообщениями выше :-)

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение31.10.2010, 23:22 


22/10/10
6
:D какая я внимательная....
а пояснить можно?)... (и что какими буквами обозначено)

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение01.11.2010, 22:26 


26/12/09
104
Москва
Где-то я уже это писала, но в общем так:
step шаг по времени, t - время, h - шаг по координате, Ti и Tk - два массива температур от координаты в моменты времени i и i+1.

Но я еще раз говорю, моя программа не рисует график. Она просто визуализирует процесс температуропроводности. А как рисовать график, я, если честно, не очень себе представляю - температура ведь зависит от координаты и от времени.. Это у тебя должен получиться анимированный график? Как-то это не наглядно...

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение02.11.2010, 01:28 
Заслуженный участник


11/05/08
32166
Kafari в сообщении #369041 писал(а):
А как рисовать график, я, если честно, не очень себе представляю - температура ведь зависит от координаты и от времени.. Это у тебя должен получиться анимированный график?

Накопите в двумерном массиве значения на нескольких временных слоях -- и выведите тот массив на картинку простейшей функцией mesh. Достаточно красивенько выйдет.

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение07.06.2011, 08:16 


07/06/11
1
полностью ввожу код приведенный выше, и выдает ошибку: ??? function [ ] = Temp( T1,T2,T0,A,L )
|
Error: Function definitions are not permitted at the prompt or in scripts.
в чем дело?

 Профиль  
                  
 
 Re: Решение уравнения теплопроводности в MatLab
Сообщение06.10.2014, 11:23 
Аватара пользователя


26/09/13
645
Таджикистан
Kafari Здравствуй, не подскажешь пожалуйста, Программа расчетов как выглядит,
думаю это код сохраняем в M-файл. Очень нуждаюсь.

код: [ скачать ] [ спрятать ]
Используется синтаксис Matlab M
function [  ] = Temp( T1,T2,T0,A,L )
s=figure;
step=0.1;
t=0;
h=1;
Ti=T0*ones(L,1);
Tk=T0*ones(L,1);
colormap(bone);
while ishandle(s)
    Ti(1)=T1;
    Ti(L)=T2;
    Tk(1)=T1;
    Tk(L)=T2;
    for x=2:h:(L-1)
        Tk(x)=(A*step/h^2)*(Ti(x-1)+Ti(x+1)-2*Ti(x)) + Ti(x);
    end
    image(Ti);
    Ti=Tk;
    t=t+step;
    pause(step);
end
end
 

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 23 ]  На страницу Пред.  1, 2

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group