 |
 
|
 |
| |
matlab : calcul norme dans L2
Bonjour, Qui peut me dire comment je peut calculer la norme en  d'un vecteur, utilisant Matlab. Merci d'avance. Code LaTeX
Bonjour,
Qui peut me dire comment je peut calculer la norme en $L^2$ d'un vecteur, utilisant Matlab.
Merci d'avance.
Edité 1 fois. La dernière correction date de il y a cinq années et a été effectuée par AD.
Modifié 1 fois. Dernière modification le 26/05/2008 par AD.
Avec matlab, ça ne prend que 10 caractères : si X est le vecteur, il suffit de faire
sqrt(X.*X)
(NB : .* désigne le produit élément par élément de deux matrices de même taille)
Bonjour, Merci pour votre réponse, est-ce que vous pouvez m'expliquer avec détail comment je calcule le norme de  dans  . Si j'ai les résultats comme des vecteurs, parce que j'ai calculé comme vous m'avez dit et j'ai obtenu un vecteur. Merci beaucoup. Code LaTeX
Bonjour,
Merci pour votre réponse, est-ce que vous pouvez m'expliquer avec détail comment je calcule le norme de $X-Y$ dans $L^2$.
Si j'ai les résultats comme des vecteurs, parce que j'ai calculé comme vous m'avez dit et j'ai obtenu un vecteur.
Merci beaucoup.
Edité 1 fois. La dernière correction date de il y a cinq années et a été effectuée par AD.
Modifié 1 fois. Dernière modification le 26/05/2008 par AD.
Ah oui, j'ai oublié de sommer les composantes : il faut faire
sqrt(sum(X.*X))
C'est que je dois faire alors pour calculer le norme de  , ça doit être :  C'est ça ? [La case LaTeX. AD] Code LaTeX
C'est que je dois faire alors pour calculer le norme de $u^2-u^1$, ça doit être :
$\sqrt(\sum(u^2-u^1.*u^2-u^1)).$
C'est ça ?
[La case LaTeX. AD]
Edité 1 fois. La dernière correction date de il y a cinq années et a été effectuée par AD.
Modifié 1 fois. Dernière modification le 26/05/2008 par AD.
Euh... Oui. Tu as vraiment besoin de moi pour remplacer X par (u1 - u2) dans une formule?
Merci en tout cas pour votre effort, mais votre repons c'est pas exact.....
Ah bon? Il faudra que tu m'expliques pourquoi.
Bonjour.
Effectivement, la réponse est fausse, faute de parenthèses. Mai Jaaour, comme le dit Lucas, tu n'es pas sérieux. C'était à toi de mettre les parenthèses.
Cordialement
Bonjour, Je suis trés serieux, parceque j'ai passé pas mal du temps en cherchant la bonne réponse, mais j'était faché contre la réponse de Luca quand j'ai demandé a lui le détail.. en tout cas le norm dasn  s'est un integral alors il faut tout d'abord connaitre la propriété du vecteur qu'on veux le normé, et comme mon vecteur viens de la solution d'une EDP en utilisant method EF alors je peut calculer l'integral untilisant des method approché sur chaque triangle du maillage, et en fin je somme sur le domain. Code LaTeX
Bonjour,
Je suis trés serieux, parceque j'ai passé pas mal du temps en cherchant la bonne réponse, mais j'était faché contre la réponse de Luca quand j'ai demandé a lui le détail.. en tout cas le norm dasn $L^2 $ s'est un integral alors il faut tout d'abord connaitre la propriété du vecteur qu'on veux le normé, et comme mon vecteur viens de la solution d'une EDP en utilisant method EF alors je peut calculer l'integral untilisant des method approché sur chaque triangle du maillage, et en fin je somme sur le domain.
Jaaour. Il faut être sérieux ! Si tu veux la norme de fonctions, il ne faut pas parler de matlab (matlab travaille sur des matrices, et tu as parlé, toi-même de vecteurs). Donc avant de poser une question, tu réfléchis un peu (puisque tu sais qu'il s'agit d'une intégrale, tu fais le calcul), et tu poses le vrai problème : calculer de façon approchée la norme. Au fait, sur quel  ? Car le calcul d'une intégrale dépend fortement de l'intervalle d'intégration. Et si cet intervalle est  , le calcul approché est en général infaisable. La fin de ton message me laisse entrevoir qu'on ne risquait pas de te répondre ... Cordialement. NB : Il existe sur le site de l'INRIA quelques documents très bien faits sur l'usage de Scilab, pourquoi ne pas aller voir (matlab en est une version commerciale). Code LaTeX
Jaaour.
Il faut être sérieux ! Si tu veux la norme de fonctions, il ne faut pas parler de matlab (matlab travaille sur des matrices, et tu as parlé, toi-même de vecteurs). Donc avant de poser une question, tu réfléchis un peu (puisque tu sais qu'il s'agit d'une intégrale, tu fais le calcul), et tu poses le vrai problème : calculer de façon approchée la norme.
Au fait, sur quel $L^2$? Car le calcul d'une intégrale dépend fortement de l'intervalle d'intégration. Et si cet intervalle est $\R$, le calcul approché est en général infaisable.
La fin de ton message me laisse entrevoir qu'on ne risquait pas de te répondre ...
Cordialement.
NB : Il existe sur le site de l'INRIA quelques documents très bien faits sur l'usage de Scilab, pourquoi ne pas aller voir (matlab en est une version commerciale).
Jaaour, non tu n'es pas sérieux. Pendant 4 ou 5 messages tu as laissé les gens croire que tu cherchais comment calculer la norme d'un vecteur, et Lucas t'a répondu la bonne réponse, alors que ce n'est pas ça que tu cherches. Et oui les mots ont un sens et ta question se pose correctement sous la forme suivante : "si  est le vecteur obtenu par la méthode des éléments finis, qui représente la fonction  solution du problème dans une base de fonctions, comment calculer la norme  de  en fonction de  ?" Avoue que ça n'a rien à voir avec la norme d'un vecteur, qui est effectivement  . Relis ton premier message ; comment voulais-tu que quelqu'un devine la question que tu te posais vraiment avec ce que tu as écrit ? Pourquoi n'avoir pas directement été précis sur ta demande ? Pour ta question, il y a en tout premier lieu une question de maths, avant l'implémentation en Matlab : si les  sont tes fonctions de base, et  le vecteur des coordonnées de  , alors  et donc où  est la transposée de  et  la matrice carrée dont le  -ième coefficient est le produit scalaire  :  , c'est-à-dire la matrice du produit scalaire  dans la base  . La première chose à faire est de calculer la matrice  , à la main (normalement tu l'as essentiellement déjà fait si ton EDP comporte un terme en  ). Une fois ceci fait tu auras pour tout  , de coordonnées  :  ce qui en Matlab doit s'écrire sqrt(X'*Q*X). Code LaTeX
Jaaour, non tu n'es pas sérieux. Pendant 4 ou 5 messages tu as laissé les gens croire que tu cherchais comment calculer la norme d'un vecteur, et Lucas t'a répondu la bonne réponse, alors que ce n'est pas ça que tu cherches. Et oui les mots ont un sens et ta question se pose correctement sous la forme suivante :
"si $X$ est le vecteur obtenu par la méthode des éléments finis, qui représente la fonction $u$ solution du problème dans une base de fonctions, comment calculer la norme $L^2$ de $u$ en fonction de $X$ ?"
Avoue que ça n'a {\it rien à voir} avec la norme d'un vecteur, qui est effectivement $||X||=\sqrt{\sum_i x_i^2}$. Relis ton premier message ; comment voulais-tu que quelqu'un devine la question que tu te posais vraiment avec ce que tu as écrit ? Pourquoi n'avoir pas directement été précis sur ta demande ?
Pour ta question, il y a en tout premier lieu une question de maths, avant l'implémentation en Matlab : si les $w_i$ sont tes fonctions de base, et $X=(x_i)$ le vecteur des coordonnées de $u$, alors $u=\sum_i x_i w_i$ et donc
$$||u||_{L^2}^2=\langle \sum_i x_i w_i, \sum_j x_j w_j \rangle_{L^2}=\sum_{i,j} x_i x_j \langle w_i,w_j \rangle_{L^2}=X'QX$$ où $X'$ est la transposée de $X$ et $Q$ la matrice carrée dont le $(i,j)$-ième coefficient est le produit scalaire $L^2$ : $q_{ij}=\langle w_i,w_j \rangle_{L^2}=\int_{\Omega} w_iw_j$, c'est-à-dire la matrice du produit scalaire $L^2$ dans la base $(w_i)$. La première chose à faire est de calculer la matrice $Q$, à la main (normalement tu l'as essentiellement déjà fait si ton EDP comporte un terme en $u$). Une fois ceci fait tu auras pour tout $u$, de coordonnées $X$ : $||u||_{L^2}=\sqrt{X'QX}$ ce qui en Matlab doit s'écrire {\bf sqrt(X'*Q*X)}.
bonjour
je veux savoir comment calculer les differentes normes de vecteurs (norme euclidienne ....) le produit scalaire de 2 vecteur et le produit vectoriel de 2 vecteurs de R 3
Avoir la volonté, c'est bien ! C'est déjà ça. Après, tu peux commencer par lire un des premiers messages de ce fil. Ca date de quatre ans, mais c'est sans doute toujours d'actualité.
Liste des forums - Statistiques du forum
Total
Discussions: 88 134, Messages: 801 441, Utilisateurs: 7 091.
Notre dernier utilisateur inscrit OLEG.
Ce forum
Discussions: 1 192, Messages: 8 412.
|
|
|
|
 |
 |
 |
©Emmanuel
Vieillard Baron 01-01-2001
|
|