Logo

septembre-decembre 2023


Mots-clés :

  • Programmation scientifique
  • Optimisation


  • Contexte : cours d’introduction à la programmation scientifique dispensé par Noël Dubray à l’ENSIIE

    Durée : 2 projets de 2 mois

    Langage(s) de programmation : C++, Python

    Outils et logiciels utilisés : GitLab, Doxygen, Armadillo, CxxTests, PovRay

    Composition de l'équipe : trinôme


    Ces projets avait pour objectif final de modéliser l'évolution d'un système physique à l'échelle quantique en 3D.


    Ma participation

    Premier projet :


  • Modélisation 2D : je me suis chargée d'afficher nos résultats avec Python. Pour cela, j'ai dû créer une méthode permettant d'enregistrer les données souhaitées sous un certain format (csv) pour pouvoir les exploiter.
  • Interface avec l'utilisateur : je me suis chargée de construire une petite interface dans le terminal afin de permettre à l'utilisateur de choisir ses paramètres librement (easy/hard mode, nombre de particules, ...).
  • Implémentation de certaines méthodes nécessaires au projet

  • Second projet :


  • Modélisation 2D : Je me suis chargée de la modélisation de notre potentiel en 2D avec Python, modélisation qui nous permettait de vérifier nos résultats.
  • Modélisation 3D : Je me suis chargée de la modélisation 3D du potentiel de notre système physique en utilisant PovRay.
  • Optimisation : je me suis occupée de certaines optimisations de notre code, notamment celles ayant une approche informatique.
  • Implémentation de la classe poly : j'ai participé à l'implémentation de la classe poly, qui est la classe principale de ce projet.
  • Avis général

    La première raison pour laquelle j'ai apprécié ces projets est leur approche unique, qui s'éloignait de la démarche traditionnelle des autres projets que j'avais réalisés. Le cours, dispensé par un ingénieur-chercheur, nous a montré une nouvelle façon de résoudre les problèmes, en nous encourageant à adopter une approche scientifique.


    Le second projet est celui qui m'a plu le plus en raison de sa partie sur l'optimisation. Le but était de rendre le code de notre premier projet, légèrement modifié, le plus efficace possible, chose qui me semble essentiel pour devenir un développeur compétent.


    En résumé, ces deux projets m'ont permis de repenser ma façon de coder et d'appréhender la programmation. Je me suis mise à me poser plus de questions sur mes pratiques et à réfléchir à la façon dont je peux améliorer mon code. Ces expériences m'ont apportés beaucoup, à la fois sur le plan professionnel et personnel.