{"id":15532558,"url":"https://github.com/azercoco/python-2d-simulation-of-schrodinger-equation","last_synced_at":"2025-04-23T13:44:15.290Z","repository":{"id":99575783,"uuid":"129219020","full_name":"Azercoco/Python-2D-Simulation-of-Schrodinger-Equation","owner":"Azercoco","description":"Une simulation de l'évolution d'un paquet d'onde gaussien ","archived":false,"fork":false,"pushed_at":"2018-04-12T09:15:48.000Z","size":6948,"stargazers_count":50,"open_issues_count":0,"forks_count":6,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-18T00:11:39.050Z","etag":null,"topics":["2d-simulation","crank-nicolson","python","quantum-mechanics","schrodinger","schrodinger-equation","simulation","simulator"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Azercoco.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-04-12T08:31:38.000Z","updated_at":"2024-10-05T13:28:07.000Z","dependencies_parsed_at":"2023-07-30T23:31:12.397Z","dependency_job_id":null,"html_url":"https://github.com/Azercoco/Python-2D-Simulation-of-Schrodinger-Equation","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azercoco%2FPython-2D-Simulation-of-Schrodinger-Equation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azercoco%2FPython-2D-Simulation-of-Schrodinger-Equation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azercoco%2FPython-2D-Simulation-of-Schrodinger-Equation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Azercoco%2FPython-2D-Simulation-of-Schrodinger-Equation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Azercoco","download_url":"https://codeload.github.com/Azercoco/Python-2D-Simulation-of-Schrodinger-Equation/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250441662,"owners_count":21431196,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["2d-simulation","crank-nicolson","python","quantum-mechanics","schrodinger","schrodinger-equation","simulation","simulator"],"created_at":"2024-10-02T11:31:31.368Z","updated_at":"2025-04-23T13:44:15.282Z","avatar_url":"https://github.com/Azercoco.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Python-2D-Simulation-of-Schrodinger-Equation\n\nUne simulation de l'évolution d'un paquet d'onde gaussien \n\n## Fonctionnement \n\nLe programme simule le comportement d'un paquet d'onde gaussien suivant l'équation de Schrödinger. L'algorithme utilisé est la méthode [Alternating direction implicit method](https://en.wikipedia.org/wiki/Alternating_direction_implicit_method). \n\nLa simulation permet de configurer un potentiel constant avec le temps ainsi que la présence d'obstacles (qui sont gérés comme des barrières de potentiel très élévées).\n\nLa fonction d'onde complexe est affichée en convertissant les nombres complexes en format de couleur *HSV*.\n### Perfomance\n\nPour une grille 200x200 à 25 *fps*, il faut compter une minute de calcul par seconde d'animation\n\n## Utilisation \n\nPour créer une animation et la stocker dans le ficher *nomDuFichier.mp4*, il faut utiliser la commande suivante : \n```console\npython main.py nomDufichier\n```\nSi l'on veut afficher la densité de probalité et non pas la fonction d'onde complexe, il faut ajouter le flag *--intensity*.\n```console\npython main.py nomDufichier --intensity\n```\n## Configuration\n\nLe fichier *config.toml* permet de configurer la simulation et le rendu, les paramètres sont :\n* FPS : Le nombre d'image par seconde de l'animation\n* DURATION : Le temps en seconde de la simulation\n* SIZE : Choisit l'échelle \n* N : Le taille de la grille en nombre de point (ce qui correspont à N^2 points)\n* DELTA_T : Le temps de simulation écoulé par seconde d'animation\n* x , y : Les positions de départ du paquet d'onde\n* Kx, Ky : Ses nombres d'onde\n* Ax, Ay : Ses facteurs d'étalements selon x et y\n* V : L'expression du potentiel\n* O : L'expression de la présence d'obstacles\n\nLe potentiel et la présence d'obstacle doivent être exprimés comme des expressions Python valides dépendant de *x* et *y* (valant respectivement un *float* et un *boolean*) car le progamme utilise la fonction Python *eval()* pour les évaluer.\n\n## Dépendances\n\nLe progamme nécessite les bibliothèques Python : *numpy*, *scipy*, et *matplotlib* ainsi que *toml*.\nIl necéssite aussi FFmpeg pour pouvoir enregister la vidéo.\n\n## Exemples \n##### Un paquet d'onde dans un potentiel quadratique \n![Un paquet d'onde dans un potentiel quadratique](Examples/example1.gif)\n\n##### Interférence à travers une double fente \n![Interférence à traver une double fente](Examples/example2.gif)\n\n##### La densité de probabilité à travers la double fente \n![Le même mais affichant la densité de probabilté](Examples/example3.gif)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazercoco%2Fpython-2d-simulation-of-schrodinger-equation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazercoco%2Fpython-2d-simulation-of-schrodinger-equation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazercoco%2Fpython-2d-simulation-of-schrodinger-equation/lists"}