//pendule physique avec la methode de Runge #include #include #include "dislin.h" using namespace std; int main() { const int STEPS = 50000; double dt = 0.002; double angle[STEPS], omega[STEPS], time[STEPS]; angle[0] = 5.*M_PI/180.; //angle initial en radians omega[0] = 0.; //vitesse angulaire initiale time[0] = 0.; //constantes du pendule physique double g = 9.81; double L = 40.; double gamma = 0.04; double force = 0.2; double freq = 2.; double accG, accAm, accEn, acc; //vitesse initiale pour la methode de Runge accG = -g/L * sin(angle[0]); accAm = -gamma * omega[0]; accEn = force * sin(freq*time[0]); acc = accG + accAm + accEn; omega[0] = omega[0] - dt/2. * acc; for (int i=1; i