The fundamental method in obtaining the solution of differential equation is extrapolation. And Runge-Kutta method is the most accurate.
So in this post we will learn how to solve Runge-Kutta Second order method using a C++ Program.
The following video demonstrates how:
VIDEO TUTORIAL
Anuncio publicitario
CODE
#include <iostream> #include <stdlib.h> #include <cstdlib>
using namespace std;
int repeat() { int ch; cout<<"\n\nWANT TO TRY AGAIN?"; cout<<"\tTO CONTINUE PRESS 1\n PRESS ANY OTHER KEY TO EXIT";
cin>>ch;
if(ch==1)
{
return 1;
} else { return 0; }
}
int main() { int option; float x,y,h; float k1,k2,k=0; label: cout<<"PLEASE ENTER THE CORRESPONDING VALUES: "; cout<<endl<<"X= "; cin>>x; cout<<endl<<"Y= "; cin>>y;
cout<<endl<<"H= "; cin>>h; system("cls"); cout<<"\nGIVEN DATA: "; cout<<"\nX= "<<x<<"\tY= "<<y<<"\tH= "<<h;
cout<<"\nForumala for Calculations: "<<endl; cout<<endl<<"FORMULA OF K1= hf[x0,y0]"; cout<<endl<<"FORMULA OF K2= hf[x0+h,y0+k1]"; cout<<endl; cout<<"\n*******CHOSE FORMAT OF THE FUNCTION*******"; cout<<"\t\n1. f(x)= x + y"; cout<<"\t\n2. f(x)= x * y"; cout<<"\t\n3. f(x)= x2 + xy"; cout<<"\nEnter Option: "; cin>>option;
switch(option) { case 1: k1=(float) h*(x+y); // KI CALCULATED cout<<endl<<"K1= "<<k1;
k2=h*(x+h+y+k1); cout<<endl<<"K2= "<<k2;
k=(k1+k2)/2; cout<<endl<<"AVERAGE K= "<<k;
if(repeat()==1) { system("cls"); goto label; } else { exit(0); } break;
case 2: k1=(float) h*(x*y); // KI CALCULATED cout<<endl<<"K1= "<<k1; k2=h*((x+h)*(y+k1)); cout<<endl<<"K2= "<<k2; k=(k1+k2)/2; cout<<endl<<"AVERAGE K= "<<k;
if(repeat()==1) { system("cls"); goto label; } else { exit(0); }
break;
case 3:
k1=(float) h*((x*x)+(x*y)); // KI CALCULATED cout<<endl<<"K1= "<<k1; k2=x=(x+h); k2=h*((x*x)+((y+k1)*x));
cout<<endl<<"K2= "<<k2; k=(k1+k2)/2; cout<<endl<<"AVERAGE K= "<<k;
if(repeat()==1) { system("cls"); goto label; } else { exit(0); } break;
default: cout<<endl<<"INCORRECT OPTION";
}//end switch }
En este articulo:c++ program,classes,computer engineering,functions,goto statements,if-else statements,kutta,maths in c++,methods in c++,runge,runge-kutta,second order method,solve runge kutta,solve runge kutta in c++,video tutorial
Escrito por
Krish Advani
Administrador de ENGGDRCAOS. Canal dedicado especialmente a la formación del estudiante que aspira a ser ingeniero. Todos los videos son Ingles. Apasionado del universo Apple, estudiante de Ingeniería y Gamer por vocación.
