|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#1 (permalink) |
Новичок
Регистрация: 02.05.2013
Сообщений: 1
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
![]() Условие задачи: Тело массой m, на которое действуют движущая сила Fд = Fд(S) и сила сопротивления Fc, разгоняется на участке пути Sр. После этого действие движущей силы прекращается (сила Fc продолжает действовать), начинается торможение, в процессе которого тело пройдет до остановки расстояние Sт за счет накопленной при разгоне кинетической энергии. Требуется: -Определить зависимость от пути S скорости v(s), ускорения a(s), вре-мени t(s); -Установить время Тр прохождения телом участка Sp и времени TT прохождения участка ST; -По полученным данным построить графики v(s), a(s), t(s) для интервала перемещения [0, Sp + ST] Исходные данные: Масса тела: m = 2 (кг). Закон движения: Fд = F0 + S +2,5. Сила сопротивления: Fc = 30 (Н). F0 = 40 (H), Sp = 0,6 (м), N = 6. текст программы: program Project2; uses crt; type mas=array [1..200] of real; var V, t, a, S, Fd:mas; int, Fc, Fo, Sr, Vs, Tt, Tr, St, dS, dSt, m : real; n, i: integer; res: text; begin writeln('Vvedite parametr m:'); readln(m); writeln('Vvedite parametr Fo:'); readln(Fo); writeln('Vvedite parametr Sr:'); readln(Sr); writeln('Vvedite parametr N:'); readln(N); writeln('Vvedite parametr Fc:'); readln(Fc); assign(res, 'res.txt'); rewrite(res); writeln(res, 'Opredelenie parametrov postupatelnogo dvijeniya tela'); writeln(res); writeln(res, 'Ishodnie dannie:'); writeln(res, 'Massa tela m = ', m:2:1,' (kg)'); writeln(res, 'Nachalnaya sila Fo = ', Fo:2:0,' (H)'); writeln(res, 'Sila soprotivleniya Fc = ', Fc:2:0,' (H)'); writeln(res, 'Ychastok razgona Sr = ', Sr:2:1,' (m)'); writeln(res, 'Kolichestvo shagov N = ', n:1); writeln(res); dS:=Sr/n; S[1]:=0; V[1]:=0; t[1]:=0; Fd[1]:=Fo+S[1]+2.5; a[1]:=(Fd[1]-Fc)/m; writeln(res, 'Ychastok razgona'); for i:=2 to n+1 do begin S[i]:=S[i-1]+dS; Fd[i]:=Fo+S[i]+2.5; int:=(Fd[i]-2*Fc+Fd[i-1])/2*dS; V[i]:=sqrt(2*(m*v[i-1]*v[i-1]/2+int)/m); Vs:=(V[i]+V[i-1])/2; t[i]:=t[i-1]+(dS/Vs); a[i]:=(v[i]-v[i-1])/(t[i]-t[i-1]); end; for i:=1 to n+1 do writeln(res, i:5,' ',' S=',S[i]:6:3,' V=',v[i]:6:3,' a=',a[i]:10:7,' t=',t[i]:6:3); Tr:=t[n+1]; writeln(res, 'Bistrodeistvie dlya ychastka razgona =', Tr:6:3); writeln(res); writeln(res); St:=(m*sqr(v[n+1]))/(2*Fc); a[n+1]:=-Fc/m; dSt:=St/n; writeln(res, 'Ychastok tormojeniya'); for i:=n+2 to (2*n)+1 do begin S[i]:=S[i-1]+dSt; V[i]:=sqrt((2/m)*((m*sqr(v[i-1]))/2-Fc*dSt)); Vs:=(V[i]+v[i-1])/2; t[i]:=t[i-1]+((S[i]-S[i-1])/Vs); a[i]:=(v[i]-v[i-1])/(t[i]-t[i-1]); end; for i:=n+1 to (2*n)+1 do writeln(res,i:5,' ',' S=',S[i]:6:3,' V=',V[i]:6:3,' a=',a[i]:6:3,' t=',t[i]:6:3); Tt:=t[(2*n)+1]-Tr; writeln(res,'Bistrodeistvie dlya ychastka tormojeniya=',Tt:6:3); close(res); end. |
![]() |
![]() |
![]() |
|
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
На форуме содержаться и другие топики, с похожим содержанием Как определить параметры конденсатора? Как определить параметры настройки сетевого подключения? 3DS Max - захват движения |
![]() |
#2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,809
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
![]()
Попробую. Только вот заковыка в том, что я как-то так и не смог понять Вашего алгоритма. Энергию зачем-то используете... И вообще, по моему разумению, прежде, чем кидаться в численные методы, следует попробовать решить задачу аналитически, что я и сделал. Не знаю, устроит ли Вас такой подход, но вот (здесь перейду на Word для работы с формулами):
![]() ![]() Собственно, Паскаль-программа понадобится лишь для табуляции формул с целью построения графиков. |
![]() |
![]() |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
![]() |
Опции темы | |
Опции просмотра | |
|
|