begin process at 2012 05 27 19:20:16
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > SIMULATION D'UN REBOND SUR UN MUR

SIMULATION D'UN REBOND SUR UN MUR


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Maths & Algorithmes Classé sous :simulation, rebond, mur, potentiel, barriere Niveau :Débutant Date de création :30/10/2007 Date de mise à jour :30/10/2007 16:44:55 Vu / téléchargé :7 731 / 353

Auteur : JCDjcd

Ecrire un message privé
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (24)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Voici un petit programme simulant un rebond d'une balle sur un mur.
La balle est modelisee par un polyedre regulier (tetraedre ou icosaedre,
pour leur construction cf autre de mes sources SPHERE).Chaque sommet
possede une petite masse (une masselote) et chaque arete est un ressort,
j'ajoute a cela une masselote au centre qui est reliee a chaque sommet
par un ressort, cela pour assurer la rigidite de la balle.

Le mur est modelise par une force exterieur agissant dans un demi-espace.
Si on veut simuler un mur a la position x<=0, alors
la force derive d'un potentiel qui est nul pour x>0 et qui est repulsive
(dans le sens des x>0) pour x<=0 et qui verifie F(x->-infini)=+infini,
autrement dit pour n'importe quelle vitesse d'impact, on aura une
barriere de potentiel, l'objet sera forcement rejete, i.e. il y aura
rebond. Il faut que le potentiel soit derivable (=0 si x>0) donc j'ai
choisi (arbitrairement) le potentiel V(x)=exp(-x/d)*exp(d/x) si x<=0
avec d la "distance de peau", qui est un parametre qui mesure la rigidite
du mur.(Les matheux pourront verifier que toutes les derivees a gauche en
zero sont bien nulles, enfin les matheux... c'est vite dit, un gars de
terminal S en est tres bien capable...)(pour les physiciens : pas la peine
de faire remarquer que mon potentiel n'est pas homogene, V0=1. arbitrairement)
Le ballon peut etre considere comme un solide (i.e. les ressorts interieurs
sont rigides, de constante de raideur k=+infini), alors comme la force
derive d'un potentiel, il y aura conservation de l'energie
(mais pas de la quantite de mouvement, et encore moins du moment angulaire :
le programme montre bien que les balles acquierent une rotation avec le
passage du mur !

Le programme permet de comparer deux murs differents (en haut la distance de peau
est elevee (mur souple), et en bas elle est basse (mur rigide, choc plus violent))

On peut facilement modifier les parametres, les formes ... ce que vous voulez.

Ce programme est une modeste simulation d'un "machin" plein de ressort que
l'on fait evoluer dans un monde...

Source

  • cf ODE.c et ODE.h utilises dans le main.c avec des ressorts (cf autres de mes sources RESSORT & RUNGE-KUTTA) et une force exterieure derivant d'un potentiel
cf ODE.c et ODE.h utilises dans le main.c avec des ressorts (cf autres de mes sources RESSORT & RUNGE-KUTTA) et une force exterieure derivant d'un potentiel

 Conclusion

Désolé d'emcombrer le site de mes simulations, mais moi je trouve ca marrant les simulations...
a chacun ses passions... (faut etre tolerant :-) )

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

30 octobre 2007 16:44:55 :
rajout de commentaires

 Sources du même auteur

Source avec Zip Source avec une capture COLORATION SYNTAXIQUE
Source avec Zip Source avec une capture ORBITES DES SATELLITES GPS
Source avec Zip Source avec une capture DESSIN D'ARBRES
Source avec Zip Source avec une capture PROGRAMMATION LINEAIRE
Source avec Zip EXTENSION DE CORPS (MATH)

 Sources de la même categorie

Source avec Zip UN EXAMPLE D'APPLICATION EN CUDA DE L'ALGORITHME DE SCAN POU... par oguzaras
Source avec Zip Source avec une capture CHIFFREMENT DE VIGENERE par lajouad
Source avec Zip Source avec une capture ANALYSE SYNTAXIQUE par lajouad
Source avec Zip Source avec une capture STRUCTURE D'UNE MATRICE PAR LES LISTE LINÉAIRE (NON CONTUGUS... par benzarabel
Source avec Zip Source avec une capture DESSINER UNE ARBRE BINAIRE( MODE CONSOLE): par benzarabel

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture GESTION DE BIBLIOTHEQUE par moujahid88
Source avec Zip Source avec une capture SIMULATION DE LA DIFFUSION THERMIQUE par ncoder
Source avec Zip SIMULATION DES LOIS DE PROBABILITÉ par Ali_usto
Source avec Zip Source avec une capture SIMULATION D'UN BILLARD par JCDjcd
Source avec Zip CONSULTATION (SUITE DE SIMULATION DE LA DIFFRACTION) par titip03

Commentaires et avis

Commentaire de juju12 le 30/10/2007 17:36:34

Très joli.
J'ai compilé avec VC2005 et pas d'erreurs (c'est bien la première fois), simplement quelques fonctions deprecated à changer éventuellement.
Un remarque tout de même (subjective) la grille est au départ invisible, tu pourrais la tourner légèrement pour qu'on s'en rende compte tout de suite.

Bonne continuation.

Commentaire de JCDjcd le 30/10/2007 17:51:42

Ca veut dire quoi "deprecated" ?
Pour la grille, il suffit de mettre initialement theta et phi a quelques degres, mais il est
bien de voir de face se qui se passe, et ensuite en bougeant un peu voir la 3D.
Initialement j'ai pris un screenshot de face, et je me suis justement dit (quoi toi) qu'il
fallait voir la grille, donc j'ai change la capture d'ecran en fonction !
merci

Commentaire de juju12 le 30/10/2007 18:22:09

deprecated~périmé

Commentaire de JCDjcd le 30/10/2007 18:43:15

mais ca veut dire quoi du point de vu C, comme ca se fait ?

Commentaire de juju12 le 30/10/2007 19:59:39

Boah c'est simplement Microsoft qui considère ces fonctions comme périmées et recommande d'utiliser d'autres plus récentes;
par exemple strncpy -> strncpy_s (problème de sécurité dans l'ancienne, buffer overflow probablement).
etc...

pour plus d'infos
http://msdn2.microsoft.com/en-us/library/8ef0s5kh(VS.80).aspx
Security Enhancements in the CRT

Je suis d'accord c'est pas fondamental, mais bon tant qu'à faire puisque ça existe autant les utiliser (et puis ca vire les warnings, je suis un peu maniaque :) )

Commentaire de JCDjcd le 30/10/2007 20:22:31

Voici mes criteres de maniaquerie :
moi je suis demi-manique : warnings au level 4 (ou 3 pour le quart-maniaque)
le 100% maniaque est celui qui a coche la case "warnings as errors" en level 4 ...
^^

NB : moi mon visual ne rale absolument pas pour les deprecated !

Commentaire de BruNews le 30/10/2007 22:00:16 administrateur CS

Elles sont superbes tes simulations, on attend les prochaines.

4996 à mettre en DisableSpecificWarnings et le compilo nous lache avec ces histoires à dormir debout.
strcpy -> strncpy -> strncpy_s, ensuite ce sera C++ CLI et on finira en VB. NIET, on fait du natif entre autre pour que ça décoiffe et faut pas se plier à nimporte quoi.

Commentaire de JCDjcd le 30/10/2007 22:56:12

haha j'aime le concept du VB.NIET ... ca me plait enormement ;-)
par contre moi le C++ , C++CLI , et VB.net ca me dit rien,
moi je suis reste au C simple (que je nomme C--)... apres je comprends pas
(et je comprends pas en quoi c'est mieux, en quoi c'est utile et vital)
ca veut dire quoi "faire du natif" ?

je crois que tout cela me depasse... je retourne dans monde de simulations ^^

Commentaire de juju12 le 30/10/2007 23:05:30 10/10

OK je me rends :)
C'était anecdotique de toutes manières; j'avais pas noté alors je le fais.

Rassure-moi Brunews tu utilises pas strcpy si?

Commentaire de BruNews le 30/10/2007 23:12:52 administrateur CS

ça arrive quand je n'ai pas besoin du pointeur final.
strcpy est une macro très efficace.

Commentaire de DeAtHCrAsH le 31/10/2007 09:47:29

Faire du natif = codé directement via l'API, sans passer par des surcouches telles que CLI et .NET
En gros quand tu fais du natif, ton exe est autonome, c'est a dire qu'il n'a besoin que de ses propres composants pour se lancer.
Rien d'extravagant comme le framework .NET.

Commentaire de JCDjcd le 31/10/2007 09:55:22

ok, je prefere mes programmes autonome et sobre...
qu'est qu'il y a de plus dans les surcouches ?
qu'est-ce-que je loupe d'extraordinaire en me bornant a mon C standard ?

Commentaire de BruNews le 31/10/2007 09:58:47 administrateur CS

Tu ne loupes rien du tout, continue sur ta lancée.

Commentaire de JCDjcd le 31/10/2007 10:09:51

cool

Commentaire de darunia le 31/10/2007 13:25:08

Tu ne loupes absolument rien, d'autant plus que j'ai été confronté à de nombreux problèmes avec ces fonctions "safes" de ms ... elles entrainaient quelque fois des access violation, super !

Sinon, source absolument nickelle !

Commentaire de LeColonel le 05/11/2007 05:20:48

moi je trouve au contraire que tu vas louper des choses: des opportunites de travail, je discute pas ds preferences de langage ou de performance, juste de la demande actuel au niveau developpement, et la ya pas photo c'est c++, c# .net.
moi depuis que j'ai decouver .net, je peux pas m'en passer pour tout un tas de raisn, mais le probleme n'est pas la.
Je suis parti vivre un an au Japon, un ami est parti avec moi, lui son truc, c'est la programmation kernel linux en C, c'est ce qu'il aime, pas de probleme.
au japon j'ai trouve du travail en 2 mois en tant que dev wev .net puis software engineer (.net), mon pote a du rentrer au bout de 3 mois faute de trouver du travail, je suis au vietnam maintenantm pareil, j'ai trouve du boulot en 2 semaines, evidemment c'etait pareil en france avec un exellent salaire.
J'ai dit a mon pote de tirer les conclusions qui s'imposent. le probleme n'est pas de savoir si le C est plus rapide ou non, si c'est mieux ou non, le probleme c'est de savoir qui recherche des programmeur C ou assembleur.. et la je suis desole mais on pourra dire ce que l'on veut mais dans ni;porte quel site de recherche demploi dans n'importe quel pays tu auras 90% de c++ c# et techno .net et peut etre 10% de C (j'ai pas encore vu d'assembleur). En C il y a donc "un peu" de boulot, mais tu auras interet a etre sacrement bon pour avoir la place.
Bref si tu aimes le C, c'est tres bien, mais garde a l'esprit que les debats c/c++/asm/c# pour savoir quel est le mieux c'est bien sur les forum mais que si tu veux travailler dans linformatique(avoir une bonne paye, des opportunites de monter en salaire, pouvoir voyager), ne faire que du C n'est pas le meilleurs choix.
Evidemment il y aura plein de programmeur C qui te diront qu'il ny a aucun probleme, mais c'est souvent des programmeurs qui ont commence le C il y a des annees, commencer leur travail au moment ou le C etait tres utilise.. la nouvelle vague de programmeur ferait mieux de se mettre a jour sur les nouvelles technos. pas parce que c'est mieux, mais parce que c'est ce qui est le plus demande en entreprise. maintenant c'est ton choix evidemment.

Commentaire de LeColonel le 05/11/2007 07:12:56

tout ca evidemment, si tu veux en faire ton metier..

Commentaire de darunia le 05/11/2007 19:30:01

LeColonel, tu oublies le Java dans tout ça ;-)
Je travaille dans une SSII de le "centre - ouest" de la France et je t'assure qu'il y a une demande très forte en Java, mais pas du tout en .net ...

Enfin bref, pour moi le C restera toujours la reference. Ce n'est pas que je n'aime pas les interpretés .net ou Java, mais pour moi un bon programmeur doit comprendre comment la machine fonctionne ... Le C est le langage qui a le meilleur ratio "proche de la machine / simplicité", il est tout simplement incontournable ! De plus, il est standart, quelqu'un qui connait le C peut developper sur Windows, Linux, MVS, PDA, consoles de jeux, et j'en passe.

Par contre, je te rejoins dans le fait que le C n'est pas très demandé sur le marché du travail. Enfin en ce qui me concerne, je pense qu'une personne competente en C/C++ n'aura aucun problème à s'adapter aux autres langages. Et oui, derriere le java, le .net, il y a ... du C.

Commentaire de BruNews le 05/11/2007 19:49:14 administrateur CS

j'ai pas encore vu d'assembleur > très peu de chance d'en voir, ce genre de taf est distribué par contrat. Si on est connu il arrive.
avoir une bonne paye > on en reparle dans 2 ou 3 ans. A la cadence à laquelle on forme les .nettistes, faudra vite revoir les prétentions à la baisse.

Commentaire de LeColonel le 06/11/2007 03:53:32

java est clairement tres demander aussi, pour resumer, tu maitrises .net, tu maitrises java, et t'as le monde dans la poche.
pour les salaires je suis pas sur que ca baisse tant que tu maitrises ton sujet, bcp de programmeur mette .net dans leur CV en ayant que les bases, de plus developpeur est un passage, il y a peu de chance de rester developpeur toute sa vie, une fois le sujet maitrise et des certifications obtenu, il vaut mieux s'orienter vers des metier plus fonctionel, conne chef de proj, ou encore faire de la formation, voir ouvrir sa boite!
pour les taffs d'assembleur, je ne le savais pas, mais comme tu dis il faut sans doute etre tres competent, pas facil pour debuter ou s'exporter.

Commentaire de p0ulpe le 06/11/2007 13:43:50 10/10

LeColonel => tes projets/conseils de carriere, ca n'a pas grand chose a voir avec le sujet (simulation de rebond de balle). Et si tu preferes d'autres languages de prog, convertis le code de JCD. C'est pas complique et ca te fera un bon exercice.

JCDjcd => les petits exemples de code que tu proposes sont tres interessants. N'hesite pas a nous 'ennuyer' avec d'autres simus, moi j'en redemande! :-)

Commentaire de cand1de le 14/08/2008 21:22:21

Comment fait-on pour exécuter tout ça sous Vista ?

Commentaire de cand1de le 14/08/2008 22:32:08

1>winutil.obj : error LNK2019: symbole externe non résolu __imp__InitCommonControls@0 référencé dans la fonction _InitLibWinutil

Commentaire de JCDjcd le 23/08/2008 21:33:33

il faut aller dans les options de compilation et inclure dans les .lib la ligne comctl32.lib

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

multithreading et opengl [ par hdi ] je doit realiser une simulation avec un affichage 3D (opengl ou open inventor), pour cela je vais realiser deux threads, un qui s'occupe des calcul po multithreading et opengl [ par hdi ] je doit realiser une simulation avec un affichage 3D (opengl ou open inventor), pour cela je vais realiser deux threads, un qui s'occupe des calcul po cherche coder [ par fmronan ] Je suis à la recherche de quelqu'un desireux de coder pour un mod(modification pour serious sam),nous sommes deja une equipe de 8 avec chaqu'un c'est Windows Media Player Simulation Unicast [ par ordy ] BonjourJ'aurais besoin de savoir si quelqu'un c'est comment stocker un flux unicast sans lancé le lecteur Windows Media ?Je dois reussir a stocker un simulation majuscule gauche au droit [ par Adeon ] Salut!j'aimerai, pour simuler l'appuie de la touche majuscule, avoir son nom et son numero ( a precisé s'il est en hexadecimal ou en decimal )je voudr Simulation de frappe de touche en C/C++ avec Win32 [ par proger73 ] Comment simuler la frappe de touche ds une fenêtre autre ke celle du prog avec l'API Win32 ? Je pense envoyer un msg Windows, mais je ne connais pas l ihm de simulation [ par Mamad ] j'aimerais creer un ihm de simulation en powerscript.Si quelqu'un peut me fournir un source, ça serait sympa.C urgent.merci Simulation Clavier (keybd_event) --- URGENT ! [ par Omeya ] Bonjour,J'essaye de simuler des touches de clavier avec mon programme, en utilisant la commande : keybd_event (13,0,0,0); keybd_event (13,0,KEYEVENTF_ Simulation de terminal... [ par Tribute2U ] Bjr, je fais un projet MFC et je voudrai simuler un terminal, pour cela j'utilise un contrôle EditBox et je déclare sur ce contrôle une variable CEdit probleme simulation clavier dans un jeux diablo2 en fenetrage [ par gg_secours ] voila je souhaiterai simuler l'appui de la touche a puis &lt;--- pour leffacer et cela infiniment jusqua l'appuye de la touche echapet tou cela duran


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales