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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2018, 11:59   #1
Маргарита23
Новичок
Джуниор
 
Регистрация: 11.12.2018
Сообщений: 1
По умолчанию [C#] Решение нелинейных уравнений методом итерации

Помогите с курсовой, сломала голову. Как вычислить С методом итерации.

вот задача:
Разрешающее уравнение для простейшей электрической цепи, состоящей из сопротивления R и конденсатора емкостью С, последовательно соединенных с источником тока, напряжение на котором равно V. Выглядит следующим образом:
q=CV(1-e^(-(t/RC) ) ),
Где q – заряд конденсатора, а t – время. Найти емкость конденсатора С, необходимую для накопления заряда q = 10-5 Кл за время t = 4*10-3 c, методом итерации. Напряжение на источнике равно V = 10 B, сопротивление R = 2000 Ом.
Маргарита23 вне форума Ответить с цитированием
Старый 11.12.2018, 12:37   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вы не перепутали "помогите" и "сделайте за меня"?

покажите свои наработки, конкретные вопросы и т.п. Если кто-то просто решит за вас, это вряд ли поможет вам разобраться.
http://www.programmersforum.ru/announcement.php?f=31

Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 11.12.2018, 14:44   #3
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Уже в постановке задачи аху ахинея. Источник тока как идеализированный элемент электрической схемы - характеризуется отдаваемым им током, а не напряжением. Напряжение при бесконечном сопротивлении нагрузки будет бесконечным. В реальной жизни такого не бывает, но это - расчетный элемент. В данной задаче имеет место источник напряжения, тоже идеализированный, судя по отсутствию внутреннего сопротивления. Физика - наука точная и требует точности в терминологии.

Последний раз редактировалось digitalis; 11.12.2018 в 22:39.
digitalis вне форума Ответить с цитированием
Старый 12.12.2018, 22:06   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Маргарите - от Мастера

"Дело было вечером, делать было нечего..."
А не порешать ли, думаю, эту задачку, тем более что она - как зерно в навозной куче бессмысленных учебных задач типа "Переставляйте строки и столбцы туды-сюды и обратно, пока не получится матерное слово" - таких процентов 90.
Схема решения - классическая. Сначала перебором по сетке находим интервал локализации корня уравнения Qx - Q = 0. Чтоб не перебирать от -∞ до +∞ , включим голову. От 10В до 10^-5 Кл полностью зарядится кондёр С = Q / U = 10^-5/10 = 10^-6, т.е. 1 mkF . Пройдем в ее окрестности с шагом, к примеру, 0,1mkF - видим, что между 1,2 и 1,3 знак меняется. Корень пойман. Теперь известным с детсада методом "твоё-моё - все пополам" ущучиваем корень.
Чтоб служба медом не казалась - на C# перепереть с Delphi - тут выбачайце, это мы не понимаем, придется самой. Зная основы синтаксиса C# это, думаю, нетрудно - логика вычислений понятна из Дельфийского текста.

Но опять же - это уже никому не нужно. Как говорили ребята из "О чем говорят мужчины" - им важно задать вопрос, а ответ уже не интересует.

Код:
Procedure TForm1.Button1Click(Sender: TObject);
// Локализация корня
var C,Ux,Tau,Qx,k: Extended ;
begin
  C := 1E-6 ;
  Memo1.Lines.Add ('    C,mkF  Tau,ms    K       U,V       Q,mkC' ) ;
  while (C < 2E-6) do
    begin
       Tau := R * C ; k := 1 - Exp (-t/Tau) ;
       Ux := U * k ; Qx := Ux * C ;
       Memo1.Lines.Add (Format
       (' %8.4f %7.3f  %6.4f  %6.3f  %10.4f ',[C*1E6,Tau*1E3,k,Ux,Qx*1E6])) ;
       C := C + 1E-7 ;
    end ;
end;

//*************************************************  
//*************************************************  

procedure TForm1.Button2Click(Sender: TObject);
// Поиск корня

var
  i: integer ; Cx, Ca, Cb, Qx, Tau, dQ, dQa, dQb : Extended ;
function Cmpt(arg:Extended): Extended ;
var tmp,Res : Extended ;
begin
  Tau := R * arg ;
  tmp := 1 - Exp(-t/TAU) ;
  Qx := U * arg * tmp  ;
  Res := Qx - Q ;
  Result := Res ;
  Memo1.Lines.Add (Format
     (' %8.4f %7.3f  %6.4f  %7.4f  %10.4f ',
         [arg*1E6,Tau*1E3,tmp,Qx*1E6,Res * 1E6])) ;
end;

begin
  Memo1.Lines.Add ( ' Serch ') ;
  Ca := 1.2E-6 ;
  dQa := Cmpt (Ca) ;
  Cb := 1.3E-6 ;
  dQb := Cmpt (Cb) ;
  while ((Cb-Ca)/Ca > 0.001) do
    begin
      Cx := (Ca+Cb)/2 ;
      dQ := Cmpt (Cx) ;
      if ((dQ < 0) and (dQa < 0)) or ((dQ > 0) and (dQa > 0))
         then Ca := Cx else Cb := Cx
    end ;
   Memo1.Lines.Add (Format (' Result = %9.4E ',[Cx])) ;
end ;
Изображения
Тип файла: jpg Dihatom.JPG (45.3 Кб, 72 просмотров)

Последний раз редактировалось digitalis; 13.12.2018 в 20:00.
digitalis вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"Решение системы линейных алгебраических уравнений методом простой итерации" и "Решение нелинейного уравнения методом итерации" BORODA77 Помощь студентам 0 19.03.2014 17:31
Решение нелинейных уравнений методом интераций. Mary1108 Помощь студентам 0 15.12.2013 17:44
Решение нелинейных алгебраических уравнений методом простой итерации MurkyMargosha Помощь студентам 1 21.10.2013 20:06
Решение нелинейных алгебраических уравнений методом простой итерации. felicity Помощь студентам 3 04.06.2011 23:24
Решение нелинейных уравнений методом хорд и методом простой итерации(С++) Foralberg Помощь студентам 9 31.01.2011 01:33