Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.03.2013, 12:52   #1
nihi
 
Регистрация: 19.03.2013
Сообщений: 9
По умолчанию Метод конечных разностей, опрос по задаче МКР

Люди, если кто программировал МКР, помогите! ЕСть тепловая задча только вместо T - температуры у меня C- концентрация. Пытаюсь реализовать на делфи явную разностную схему по http://ikt.muctr.ru/html2/7/lek7_4_3.html Хэлпаните плс!
ВОт кусок про-мы:
Код:
delta_fi:=2*pi/20;
  C0:=C0+C0*sin(delta_fi);//концентрация в соответствии с нач. условиями
  tau_na_dva:=sqr(delta_fi)/2*D;//определяем расчетный шаг по времени, руководствуясь условием устойчивости
  Rc:=D/sqr(r1+h_u);


  //{определяем расчетный шаг сетки по пространственной координате}
  hx:=delta_fi;


  //определяем концентрацию в начальный момент времени
   for i:=1 to Nx do
      for j:=1 to Ny do

      C[i,j]:=C0;

      time:=0;
      while time<t_end do

         begin
           time:=time+tau_na_dva;

         for i:=2 to Nx-1 do
          for j:=2 to Ny-1 do

         end;

          CC[i,j]:=C[i,j]+Rc*tau_na_dva/sqr(hx)*(C[i,j-1]-2*C[i,j]+C[i,j+1]);

           begin

          for i:=1 to Nx do
           for j:=1 to Ny do
           CC[1,j]:=0;CC[Nx,j]:=Cz;CC[i,1]:=0;CC[i,Ny]:=Cz;

           time:=time+tau_na_dva;
       end;


      begin

        for i:=1 to Nx do
          for j:=1 to Ny do

       writeln(CC[i,j]:8:5);
      end;
   readln;readln;






end.
В делфи не силен, прошу строго не судить
nihi вне форума Ответить с цитированием
Старый 23.03.2013, 13:42   #2
s-andriano
Старожил
 
Аватар для s-andriano
 
Регистрация: 08.04.2012
Сообщений: 3,229
По умолчанию

Попытайтесь:
1. Правильно "лесенкой" расставить операторы.
2. Написать комментарии - зачем нужны те или иные строки программы.
Вероятнее всего, это поможет Вам самостоятельно найти ошибки.

Вообще же ошибки в программе бывают двух видов:
1. Синтаксические - эти ошибки Вам покажет компилятор.
2. Логические - когда формально правильная программа делает не то, что от нее требуется. Чтобы найти такие ошибки, нужно знать, что должна делать программа. Без комментариев это установить практически невозможно, можно только догадываться. Но мы ведь здесь собрались не для того, чтобы упражняться в телепатии?
s-andriano вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[C#] Метод конечных разностей ardor Помощь студентам 0 11.05.2012 00:16
Метод конечных (центральных) разностей Alex.Pi Помощь студентам 0 17.04.2012 18:59
алгоритмизация разделенных разностей для метода Эверхарта vassisualii Помощь студентам 0 05.10.2011 22:27
вычисление конечных сумм в Паскале. lammy Помощь студентам 8 10.03.2010 13:48
Метод конечных элементов kodSIM Общие вопросы C/C++ 1 08.10.2008 14:45