Accueil > > > BOITE A OUTILS MATHÉMATIQUES POUR L'ALGÈBRE LINÉAIRE ET L'ANALYSE
BOITE A OUTILS MATHÉMATIQUES POUR L'ALGÈBRE LINÉAIRE ET L'ANALYSE
Information sur la source
Description
Calcul matriciel, polynomial, équations différentielles, équations aux dérivées partielles, calculs de zéros et d'extrema, d'intégrales, d'éléments propres, lissage, tabulation, interpolation, systèmes linéaires et non-linéaires.
Source
Conclusion
Il reste à écrire l'interface graphique et le post-traitement pour l'équation de poisson.
Historique
- 01 juillet 2010 20:59:17 :
- Détail de la syntaxe à utiliser pour créer les différents objets.
- 03 juillet 2010 00:06:03 :
- J'ai remplacé entete2.h par entete.h pour que ça passe à la compilation.
- 08 juillet 2010 18:46:48 :
- Modification majeure: la structure globale qui regroupait les départs de chaînes sont remplacés par les données membres statiques debut. Les fonctions friends qui parcouraient les chaînes sont remplacées par des fonctions membres statiques.
- 16 juillet 2010 12:27:04 :
- Nouvelle mise à jour majeure: tous les char* et les char[] sont remplacés par des objets string. Pour tous les objets, le passage de paramètres par valeur est remplacé par le passage par référence (avec const à chaque fois que c'est possible).
Prochaine mise à jour: remplacement des listes chaînées crées manuellement à l'aide de la donnée membre *suiv par des listes crées avec std::list.
- 17 juillet 2010 14:45:49 :
- modification mineure: simplification de recupere_nom_objet
- 20 juillet 2010 12:33:48 :
- modification majeure: suppression des 10 listes chaînées faites "manuellement" (avec les pointeurs membres "*suiv" et données membres statiques "debut"). Elles sont remplacées par 10 std::list qui procure une gestion plus simple des listes.
- 22 juillet 2010 16:28:05 :
- Lorsqu'une opération est effectuée le résultat est stocké dans les listes ce qui permet de réutiliser ce résultat pour d'autres calculs.
- 28 juillet 2010 00:49:03 :
- Modifications mineures: amélioration de l'affichage d'un complexe et d'un polynôme. Correction d'un bug dans "saisie_complexe".
Ajout majeur: les opérations croisées entre les différents types d'objets sont écrites. Voir dans "effectuer_operation" toutes les opérations implantées.
- 29 juillet 2010 12:10:23 :
- Création de la variable permanente "i" utile pour les nombres complexes. Dans "effectuer_operation", création de deux variables réelles temporaires pour pouvoir introduire des nombres directement. Ex: v1=5*v ou r=5+2 ou m1=m/5.
- 16 août 2010 17:27:40 :
- Ajout de l'option: effectuer un enchainement d'opérations.
Exemples:
a=3(7-2)+8 crée le réel a,
a=m-r*I crée la matrice a (m et I matrices, r réel),
v=au-b crée le vecteur v (a matrice et u et b vecteurs)
Pour évaluer une expression, celle-ci est analysée et transformée en arbre syntaxique (binaire). Ensuite un parcours en post-ordre de cet arbre permet d'obtenir une notation polonaise inverse de l'expression. Celle-ci est rangée dans une std::queue puis exécutée dans une pile std::stack. Les résultats intermédiaires sont stockés temporairement dans les std::list avec un nom tel que
temp<n°>. Une fois le résultat final obtenu, ces variables temporaires sont effacées.
- 17 août 2010 12:12:31 :
- corrections de bugs, notamment lors de la copie d'une variable et lorsque qu'une variable-opérande d'une opération n'existe pas dans les std::list.
- 23 août 2010 12:53:19 :
- Correction de nombreux bugs (facteurs négatifs et affichage des polynômes). Implantation des fonctions usuelles (cos,sin,tan,acos,asin,atan,log,exp,sqrt) valables pour kes variables réelles, de l'opération puissance (ex: m'=m^3)valable pour tous les types d'objet et de la fonction ide qui permet de créer des matrices identité.
Pour aider à l'utilisation du programme, vous pouvez lire le fichier lisez-moi qui détaille ce que l'on peut déjà faire.
Faites moi aussi part des bugs qui pourraient m'avoir échapper. Merci d'avance.
- 24 août 2010 11:39:42 :
- Suppression de l'horrible menu. Il est remplacé par des commandes et une analyse des expressions du type nom=expression pour savoir quoi faire. Voir le fichier
lisez-moi pour plus de détails.
- 26 août 2010 20:03:16 :
- Lire lisez-moi. Ajout de l'évaluation d'un polynôme à variable réelle et à matrice réelle carrée. Ajout de l'évaluation d'une fonction à une variable réelle.
- 30 août 2010 12:11:05 :
- correction de bugs dans la multiplication des matrices, ajout d'un fichier journal, des fonctions reso (résolution de systèmes linéaires), trans (transposée d'une matrice), det (déterminant), trace (trace), module (d'un nb complexe).
Voir lisez-moi pour plus de détails.
- 30 août 2010 13:40:23 :
- correction d'un bug sur la multiplication de deux matrices.
- 31 août 2010 16:31:22 :
- Correction d'un bug sur l'analyse des expressions. Transposé d'un vecteur, multiplication de deux vecteurs pour donner suivant les cas un produit scalaire ou une matrice de rang 1.
Polynôme caractéristique d'une matrice carrée. Voir lisez_moi.
- 03 septembre 2010 23:27:31 :
- rang d'une matrice, éléments propres d'une matrice, zéros d'un polynôme. Voir lisez_moi pour plus de détails.
- 07 septembre 2010 13:33:32 :
- Tabulation de fonctions, méthode de Newton, intégration de Gauss.
- 09 septembre 2010 16:49:35 :
- Possibilité de taper les commandes et les fonctions indifféremment en majuscule ou en minuscule.
Possibilité de sauver les objets en mémoire dans un fichier et de les récupérer. Voir lisez-moi.
- 17 septembre 2010 16:53:18 :
- Méthode d'Euler, de RK4 pour les équations du premier ordre
Méthode matricielle pour les équations différentielles linéaires du second ordre. Voir lisez_moi.
- 20 septembre 2010 12:22:05 :
- Évaluation des fonctions à expression à deux variables
(ex: x=f(3,2). Méthode de Runge-Kutta d'ordre 4 adaptée aux équations linéaires du second ordre transformées en systèmes 2*2 du premier ordre(diff21). Méthode de tir (tir) pour les équations linéaires du second ordre avec des conditions aux limites.
- 24 septembre 2010 22:34:22 :
- Tabulation et évaluation d'une fonction à deux variables.
Évaluation d'une fonction tabulée 1d et 2d par interpolation.
Voir lisez-moi pour plus de détails.
- 27 septembre 2010 14:02:47 :
- Détermination du noyau d'une matrice (fonction ker). Indispensable pour obtenir les sous-espaces propres d'une matrice (à utiliser avec poly et bairstow) en déterminant les noyaux de A-l_i*Id.
- 28 septembre 2010 20:04:12 :
- Extraction de lignes et de colonnes d'une matrice et extraction de nombres des vecteurs et des matrices.
Voir lisez_moi pour la syntaxe.
- 03 octobre 2010 13:15:30 :
- Équations aux dérivées partielles du premier ordre de la forme
ay'x+bf'y=c avec des C.L sur une courbe
- 09 octobre 2010 17:51:22 :
- Extrema (fonction 2 variables), systèmes non-linéaires (2*2), interpolation de Lagrange,
- 13 octobre 2010 15:31:28 :
- Équation de la chaleur et sa résolution par la méthode de Cranck-Nicholson (une variable d'espace).
Équation de propagation des ondes et sa résolution par la méthode implicite (une variable d'espace).
- 21 octobre 2010 11:19:35 :
- Création et résolution directe de l'équation de Poisson.
Voir lisez_moi.
- 29 octobre 2010 23:16:22 :
- Pour l'équation de poisson, introduction directe de coefficients à l'équation, exemple; 2f"x+3f"y=x+y
Pour la méthode directe de la résolution de l'équation de poisson, la matrice (énorme) a été découpée et allégée grâce à l'introduction d'une ligne de ciel (voir le livre de Gouri Dhatt et de Gilbert Touzot "Une présentation de la méthode des éléments finis"). Pour une discrétisation de 100X100 (ce qui donne une matrice de 9600 équations à 9600 inconnues), sa taille passe de 800Mo à 16Mo environ.
La prise en compte de la ligne de ciel avec la méthode LR à la place de celle du pivot permet de faire passer le temps de calcul de 4h à quelques secondes. Tout le secret réside dans le fait que l'on ne stocke plus les zéros inutiles et qu'ils ne sont plus pris en compte dans les calculs.
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
AIDE: CHERCHE TUTORIEL SUR LES FONCTIONS GRAPHIQUES [ par Mmuller57 ]
je CHERCHE un TUTORIEL sur LES FONCTIONS GRAPHIQUES en C++(tracer une ligne, un cercle, un carrée, un rectangle, un polygone et le tout en C++ !). Je
Liens entre 2 tables sous Base Oracle [ par Charly06 ]
Bonjour ma question est la suivante : Comment créer un lien entre 2 tables, sachant que je suis sous Oracle. D'avance merci
liste de fonctions [ par niconico ]
quelqu'un aurait-il l'adresse d'un site ou je pourrait trouver la liste des fonctions en C++; ou au moins celles relatives a la creation, modification
problèmes liens entre fichiers C et C++ dans un projet Visual C++ 6.0 [ par nico ]
J'ai récupéré un projet contenant des fichiers écrits en C. Le fichier "principal" de ce projet également écrit en C fait appel à des fonctions se tro
codes C++ pour TAPI et MAPI [ par Francky ]
Bonjour,Je recherches des codes sources C++ pour les les fonctions TAPI (téléphone) et fonctions MAPI (mails).Merci d'avance.
Comment utiliser InternetOpen(...), CloseHandle(...) et autres fonctions se rapportant au Web ? [ par Tiot Seb ]
Salut amis programmeurs sous Visual C++!J'ai besoin, pour un projet de stage, de pouvoir, ouvrir et fermer Internet Explorer. En fait, je dois créer u
classes ou juste fonctions ? [ par madVinz ]
Salut!Comment choisir entre faire des classes ou juste des fonctions ???merci, @+
<bios.h>aidez moi aussi pour les fonctions geaphiques sous dev c++ 4.0 [ par riderpro ]
Voila il me faut <bios.h> pour dev c++ 4.0 sinon je ne peux pas faire mes progs pleas entrz en contact pour coopération
Les grandes tables Access et ODBC [ par Michel Caramez ]
Bonjour,Je travail sur un système de récupération de données en C++ via un ODBC sur une table MS Access. j'ai développé une mini application. Mais voi
Tableau de correspondance des fonctions c++ et de leur fichier #include [ par guguy ]
BonjourJ'aimerais savoir s'il serait possible de trouver un tableau de correspondance entre les fonctions c++ et leur fichier #include (ex : cout ->
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
MATRICE TEMPLATEMATRICE TEMPLATE par hjr2610
Cliquez pour lire la suite par hjr2610 RE : SAC A DOS RE : SAC A DOS par hadjkaddour
Cliquez pour lire la suite par hadjkaddour
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|