Ode et portrait de phase

Soyez le premier à donner votre avis sur cette source.

Vue 9 149 fois - Téléchargée 417 fois

Description

Une petite source sur les equations differentielle et de leur portrait de phase
Il n'y a "que" 9 equations, les plus connues.
  • Oscillateur Harmonique Libre Non-amorti
  • Oscillateur Harmonique Libre Amorti : régime pseudo-périodique
  • Oscillateur Harmonique Libre Amorti : régime critique
  • Oscillateur Harmonique Libre Amorti : régime apériodique
  • Oscillateur Harmonique Forcé : sans résonance
  • Oscillateur Harmonique Forcé : résonance
  • Oscillateur de Van der Pol libre
  • Oscillateur de Van der Pol forcé
  • Système prédateurs-proies

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_JCDjcd
Messages postés
1138
Date d'inscription
mardi 10 juin 2003
Statut
Membre
Dernière intervention
25 janvier 2009
2
Pour le AssertMatrix, effectivement il y a un probleme, Kirua me l'avait deja fait remarquer, et j'ai oublie de le changer
Sinon bonne idee pour eviter le gaspillage de temps.
Bel0
Messages postés
71
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
14 septembre 2007

Même remarque que dans mon premier post dans la fonction InitDbgMatrix

Sinon, j'ai aussi remarqué que ton programme consommait tout le cpu disponible même s'il n'y avait aucune simulation en court. J'ai rajouté dans ton code un petit bout qui règle ce problème.

while(TRUE)
{
if(PeekMessage (&msg, NULL, 0, 0, PM_REMOVE))
{
if(msg.message == WM_QUIT)
break;
TranslateMessage(&msg);
DispatchMessage(&msg);
}
else
{
if(nbChild == 0)
Sleep(50);
else
SendMessage(hwnd, WM_FREETIME, 0, 0);
}
}

nbChild est une variables static dans le fichier main.c qui est initialisée à 0, augmentée de 1 à la fin de la fonction createChildWindow et diminuée de 1 dans le WM_DESTROY de la fonction ChildWndProc.
Bel0
Messages postés
71
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
14 septembre 2007

J'ai fini de jouer avec le programme et sa réalisation est très bien faite. Bravo.

Je viens de commencer à plonger dans le code et là aussi la qualité du code est relativement bonne ! :)

Au passage tu vas pouvoir corriger ton premier bug :P
void _AssertMatrix(P_MATRIX p,BOOL bCheckVals)
{

AssertPointer(p);
AssertMalloc(p);
Assert(p->nx > 0);
Assert(p->ny > 0);

if(bCheckVals)
{
int i,j;

for(j=0;iny;j++)
{
for(i=0;inx;i++)
{
AssertDouble(p->vals[p->nx*j + i]);
}
}
}

PopErrorMacro();
}

-> Ca devrait pas être j dans la condition de la première boucle ?

Je continue à chercher.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.