Вычисление кинетической энергии
Для расчета кинетической энергии затрачиваемой на разгон судна используется известное соотношение Такой же расчет необходимо произвести для задачи торможения. Вычисление интеграла производится одним из численных методов на основании результатов, полученных в третьей модельной задаче.
Первая модельная задача // дима.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <conio.h> #include <math.h>
using namespace std; double m=12000; double R(double v){ return 548.8*v; } double T(double v){ return -289*v+15680; } double fv(double v){ return 1.0/m*(T(v)-R(v)); } double fs(double v){ return v; }
void main(){ cout<<"Raschet puti razgona metodom Eilera"<<endl; double eps=0.001, a=0, b=141, h,s1,v1,t1; int i, n=200; h=(b-a)/(double)n; double t=0, v=0, s=0, w=10; for(i=0; i<n; i++){ s1=s+h*fs(v+h/2*fv(v)); v1=v+h*fv(v+h/2*fv(v)); t1=t+h;
s=s1; v=v1; t=t1; if(fabs(v-w)<eps){ cout<<"t razg="<<t<<endl; cout<<"v razg="<<v<<endl; cout<<"s razg="<<s<<endl; break; } w=v; }
//getch(); }
Вторая модельная задача
// дима.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <conio.h> #include <math.h>
using namespace std; double m=12000; double R(double v){ if(v<11.11111) return 1429.7*v-155.48; else if(v<16.66667) return -693*v+20193; else return 590.94*v-1009.4; } double T(double v){ if(v<7.22222) return -122.57*v+15797; else return -677.37*v+19507;} double fv(double v){ return 1.0/m*(T(v)-R(v)); } double fs(double v){ return v; }
void main(){ cout<<"Raschet puti razgona metodom Eilera"<<endl; double eps=0.001, a=0, b=141, h,s1,v1,t1; int i, n=200; h=(b-a)/(double)n; double t=0, v=0, s=0, w=10; for(i=0; i<n; i++){ s1=s+h*fs(v+h/2*fv(v)); v1=v+h*fv(v+h/2*fv(v)); t1=t+h;
s=s1; v=v1; t=t1; if(fabs(v-w)<eps){ cout<<"t razg="<<t<<endl; cout<<"v razg="<<v<<endl; cout<<"s razg="<<s<<endl; break; } w=v; }
//getch(); }
Третья модельная задача
// дима.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <conio.h> #include <math.h>
using namespace std; double m=12000; double R(double v){ if(v<5) return 58.969*pow(v,3)-20.165*pow(v,2)+194.61*v; else if(v<9.44444) return 119.07*pow(v,3)-3109.1*pow(v,2)+27011*v-64374; else if(v<14.44444) return -5.4432*pow(v,4)+278.21*pow(v,3)-5315.5*pow(v,2)+44112*v-119825; else return -0.6612*pow(v,3)+197.18*pow(v,2)-5987.4*v+57159; } double T(double v){ if(v<5.55556) return -13.605*pow(v,2)-11.359*v+15683; else return -56.662*pow(v,2)+306.35*v+15329;} double fv(double v){ return 1.0/m*(T(v)-R(v)); } double fs(double v){ return v; }
void main(){ cout<<"Raschet puti razgona metodom Eilera"<<endl; double eps=0.001, a=0, b=141, h,s1,v1,t1; int i, n=200; h=(b-a)/(double)n; double t=0, v=0, s=0, w=10; for(i=0; i<n; i++){ s1=s+h*fs(v+h/2*fv(v)); v1=v+h*fv(v+h/2*fv(v)); t1=t+h;
s=s1; v=v1; t=t1; if(fabs(v-w)<eps){ cout<<"t razg="<<t<<endl; cout<<"v razg="<<v<<endl; cout<<"s razg="<<s<<endl; break; } w=v; }
//getch(); }
Популярное: Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней... Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (288)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |