Bonjour,
Je travaille actuellement sur de la simulation numérique et j'utilise des nombres complexes dans mes calculs. En fait, je n'utilise que des opérations arithmétiques de base, donc pas de sin(), cos() ou autre fonction mathématique.
Pour l'instant, je me suis tourné vers la classe std::complex de la SL, mais je me demandais si il n'existait pas une autre alternative.
Des mesures ont montré que je passais près de 20% du temps d'exécution du programme dans la fonction operator-(double, complex) et environ 10% dans operator*. Ce sont donc de vrais goules d'étranglement.
Je me suis demandé si récrire une classe de nombres complexes en utilisant des expressions templates pour optimiser les calculs serait une bonne solution, mais avant cela, je préfère me renseigner pour savoir si il existe une réelle alternative.
Merci d'avance.
Partager