Exercice P9b

Exercice P9b

by Katja Sophia Moos -
Number of replies: 6

Bonjour,

Nous avons un problème avec l'exercice P9b:

Nous savons que notre intégrateur EulerCromer fonctionne parfaitment parce que le test avec la chute libre (ex P6) nous a donné les bonnes résultats.
En plus, nous savons que les équations 13-15 du page 12 de la complément mathématique pour la cone simple fonctionnent aussi, parce que nous les avons calculé par main pour les vérifier.
Nous avons déjà implementé une fonction qui réduit l'angle avec modulo 2 pi (elle fonctionne aussi, nous l'avons vérifié) et nous sommes sûr que nous n'avons pas un problème avec le polymorphisme.

Maintenant notre problème est que nous avons des chiffres fausses quand nous évoluons le système avec la toupie canonique donnée dans l'énonce de l'exercice P9.

En vrai, nous n'avons aucune idée pourquoi cela ne fonctionne pas et pourquoi nous n'avons pas les bonnes chiffres.

Avez-vous une idée où notre problème pourrait se trouver ou avez-vous un conseil qu'est-que nous pourrions vérifier/faire en plus pour arriver à notre but?

Merci pour vos réponses,

In reply to Katja Sophia Moos

Re: Exercice P9b

by Josué Antoine Maechling -

Si à la main vous obtenez les bons nombres, alors mettez des "cout" à chaque étape des calculs et comparez avec ce que vous avez à la main.

Il y a certainement des endroits autres que dans l'intégrateur où vous touchez aux nombres, sinon vous auriez les bons résultats.

C'est peut-être un nombre entier qui a été mal écrit (4 au lieu de 4.0 par exemple)

Une fois que vous avez trouvé, n'hésitez pas à me dire à quel endroit vous vous étiez trompés.

In reply to Josué Antoine Maechling

Re: Exercice P9b

by Katja Sophia Moos -

Merci pour tes réponses.

Malheureusement, ca marche toujours pas, même avec tes conseils. Mais il nous semble que nous avons peut-être trouvé la raison pour laquelle ca ne marche pas, mais nous n'arrivons pas à le résoudre:

Notre fonction qui fait modulo 2 pi le calcule correctement (la valeur est correct et nous ne recevons pas un message d'erreur), mais après elle ne stocke pas correctêment la valeur dans notre variable, il nous semble. Comme paramètre nous donnons à cette function une référence. Après nous l'avons essayé avec des pointeurs, mais il ne fonctionne pas encore.

As-tu une suggestion comment on peut résoudre ce type de problème?
In reply to Katja Sophia Moos

Re: Exercice P9b

by Deleted user -

Pourrais-tu nous donner un exemple du code qui ne marche pas? (Pas le code de votre projet, mais un exemple d'utilisation équivalent à votre code)

In reply to Deleted user

Re: Exercice P9b

by Katja Sophia Moos -

Ok.

J'essaie, j'éspere c'est plus claire avec cet exemple analogue:

void fonction(vecteur& v) et une autre void fonction2(double& element)

On peut appeler la deuxième dans la première et dans la fonction2 nous avons quelques calcus et une commande similaire comme celui:

element = calculs;


In reply to Katja Sophia Moos

Re: Exercice P9b

by Deleted user -

Vérifiez que dans 'fonction', vous n'avez pas un appel de la sorte

fonction2(variable_temporaire);

alors que vous pensiez modifier directement une autre variable "permanente".


variable_temporaire peut par exemple être une variable retournée par copie par une autre fonction/méthode.

Par ailleurs, note que pour calculer un modulo, l'opérateur modulo '%' et std::remainder sont aussi des alternatives viables.