Wikilivres
frwikibooks
https://fr.wikibooks.org/wiki/Accueil
MediaWiki 1.47.0-wmf.13
first-letter
Média
Spécial
Discussion
Utilisateur
Discussion utilisateur
Wikilivres
Discussion Wikilivres
Fichier
Discussion fichier
MediaWiki
Discussion MediaWiki
Modèle
Discussion modèle
Aide
Discussion aide
Catégorie
Discussion catégorie
Transwiki
Discussion Transwiki
Wikijunior
Discussion Wikijunior
TimedText
TimedText talk
Module
Discussion module
Event
Event talk
Mathc matrices/Fichiers h : vc m
0
69162
770100
750979
2026-07-31T17:15:24Z
Xhungab
23827
770100
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/a03b| '''Bibliothèque''']]
Installer ce fichier dans votre répertoire de travail.
{{Fichier|vc_m.h|largeur=70%|info=|icon=Crystal Clear mimetype source h.png}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : vc_m.h */
/* ------------------------------------ */
/* ------------------------------------ */
double ** c_mR(
double **A,
double **B
)
{
int r;
int c;
for (r=R1; r<A[R_SIZE][C0]; r++)
for (c=C1; c<A[C_SIZE][C0]; c++)
B[r][c] = A[r][c];
return(B);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **ca_A_mR(
double a[],
double **A
)
{
int r;
int c;
int i=0;
for (r=R1; r<A[R_SIZE][C0]; r++)
for (c=C1; c<A[C_SIZE][C0]; c++)
A[r][c] = a[i++];
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_c_mR(
double **A,
int cA,
double **B,
int cB
)
{
int r;
for(r=R1; r<A[R_SIZE][C0]; r++)
B[r][cB] = A[r][cA];
return(B);
}
/* ------------------------------------ */
double **c_r_mR(
double **A,
int rA,
double **B,
int rB
)
{
int c;
for(c=C1; c<A[C_SIZE][C0]; c++)
B[rB][c] = A[rA][c];
return(B);
}
/* ------------------------------------ */
/* Copy the column cA of A into the row rB of B */
/* ------------------------------------ */
double **c_c_r_mR(
double **A,
int cA,
double **B,
int rB
)
{
int rc;
for(rc=RC1; rc<A[R_SIZE][C0]; rc++)
B[rB][rc] = A[rc][cA];
return(B);
}
/* ------------------------------------ */
/* Copy the row Ra of A into the column CB of B */
/* ------------------------------------ */
double **c_r_c_mR(
double **A,
int rA,
double **B,
int cB
)
{
int rc;
for(rc=RC1; rc<A[R_SIZE][C0]; rc++)
B[rc][cB] = A[rA][rc];
return(B);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_c_D_mR(
double **AC,
double **AD
)
{
int r;
m0_mR(AD);
for(r=R1; r<AC[R_SIZE][C0]; r++)
AD[r][r] = AC[r][C1];
return(AD);
}
/* ------------------------------------ */
double **c_D_c_mR(
double **D,
double **U
)
{
int r;
int c;
for ( r=R1; r<D[R_SIZE][C0]; r++)
for ( c=C1; c<D[C_SIZE][C0]; c++)
if(r==c)
U[r][C1] = D[r][c];
return(U);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_s_mR(
double s,
double **A,
int r,
int c
)
{
int Rmax = (A[R_SIZE][C0]-R1);
int Cmax = (A[C_SIZE][C0]-C1);
if( r<R1 ||
c<C1 ||
r> Rmax||
c> Cmax)
{
printf("\n Error : c_coef_R(); \n\n");
printf("\n R = %d; C = %d; \n",r,c);
printf("\n R and C must be : \n");
printf("\n R>=1; C>=1;\n R=<%d; C=<%d;\n",
Rmax,
Cmax);
printf("\n Press return to continue. \n");
fflush(stdout);
getchar();
exit(EXIT_FAILURE);
}
A[r][c] = s;
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_r_reverse_order_mR(
double **U,
double **V
)
{
int c;
for(c=C1; c<U[C_SIZE][C0]; c++)
V[R1][csize_R(V)+C1-c] = U[R1][c];
return(V);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_rU_rA_cn_mR(
double **U,
int rU,
double **A,
int rA,
int cn
)
{
int c;
for(c=C1; cn<A[C_SIZE][C0]; c++,cn++)
A[rA][cn] = U[rU][c];
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_cV_cA_rn_mR(
double **V,
int cV,
double **A,
int cA,
int rn
)
{
int r;
for(r=R1; rn<A[R_SIZE][C0]; r++,rn++)
A[rn][cA] = V[r][cV];
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **c_Uc_r_mR(
double **U,
int Uc,
double **A,
int rA
)
{
int c;
for(c=C1; Uc<U[C_SIZE][C0]-C1; c++,Uc++)
A[rA][c] = U[R1][Uc];
return(A);
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
La fonction c_mR(); permet de copier la matrice A dans la matrice B. Elle ne vérifie pas la taille des matrices. Le fait d'avoir conservé cette possibilité m'a rendu de grand service.
La deuxième fonction copie un tableau de nombre dans une matrice.
La fonction c_c_mR(); copie une colonne de A dans une colonne de B.
La fonction c_r_mR(); copie une ligne de A dans une ligne de B.
La fonction c_c_r_mR(); copie une colonne de A dans une ligne de B.
La fonction c_r_c_mR(); copie une ligne de A dans une colonne de B.
La fonction c_D_UC1_mR(); copie une diagonale dans un vecteur colonne.
{{AutoCat}}
btipay03yx7myfwk8kznpq6k8n7okur
Mathc matrices/a07
0
77093
770101
753140
2026-07-31T17:19:17Z
Xhungab
23827
770101
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
:
[[Mathc_matrices/Sommaire| Sommaire]]
{{Partie{{{type|}}}|'''Copier des matrices'''}}
:
'''Copier un tableau de nombres dans une matrice:'''
* [[Mathc matrices/Fichiers c : c_a_a| ca_A_mR();]]
:
'''Copier un nombre dans une matrice:'''
* [[Mathc matrices/a03d| c_s_mR();]]
:
'''Copier une matrice A dans une matrice B:'''
*[[Mathc matrices/c11a4| c_mR(A,B);]]
*[[Mathc matrices/h07a| c_mR(A,B); ... ... ... A[R2,C3]->B[R3,C6]]]
:
:
{{Partie{{{type|}}}|Utilitaire pour les lignes et les colonnes:}}
:
'''Copier une colonne ou une ligne de la matrice A dans la matrice B:'''
*[[Mathc matrices/c11a5| c_c_mR(A,C1,B,C2);]]
*[[Mathc matrices/c11a6| c_r_mR(A,R1,B,R2);]]
:
'''Copier une colonne (ligne) de la matrice A dans une ligne (colonne) de la matrice B:'''
*[[Mathc matrices/c11b4| c_c_r_mR(A,C1,B,R2);]]
*[[Mathc matrices/0en| c_r_c_mR(A,C1,B,R2);]]
:
'''Copier une ligne R1 dans la ligne R2 d'une matrice:'''
*[[Mathc matrices/b0a4c| c_r1r2_mR(A,R1, R2);]]
:
'''Copier n lignes d'une matrice A dans une matrice B:'''
*[[Mathc matrices/c101i| c_nr_mR(A,nR, B);]]
:
'''Copier une matrice diagonale dans une matrice d'une colonne:'''
* [[Mathc matrices/h09z|c_D_c_mR(D,U);]]
:
'''Copier une matrice d'une colonne dans une matrice diagonale:'''
* [[Mathc matrices/022|c_c_D_mR(U,D);]]
:
{{Partie{{{type|}}}|Utilitaire pour Gauss-Jordan:}}
:
'''Copier A et b dans Ab Gauss-Jordan:'''
*[[Mathc matrices/c21k| c_A_b_Ab_mR(A,b, Ab); ]]
:
'''Copier A de Ab dans A, et b de Ab dans b:'''
*[[Mathc matrices/c21l| c_Ab_A_mR(Ab, A); ... c_Ab_b_mR(Ab, b);]]
:
'''Copier la sous-matrice de Ab dans subA:'''
*[[Mathc matrices/c12ec1| c_Ab_subArxr_mR(Ab, subA);]]
:
'''Copier la matrice inverse du système Ab dans la matrice invA:'''
* [[Mathc matrices/a34|c_Inv_A_mR(Ab, invA);]]
:
{{Partie{{{type|}}}|Utilitaire pour l'index (R0):}}
:
'''Copier une matrice avec la ligne zéro (R0 : Index de position des colonnes)'''
*[[Mathc matrices/c101j| c_withR0_mR(A,B);]]
:
'''Copier une colonne avec son indice dans une autre colonne:'''
*[[Mathc matrices/b0a4b| c_c_withR0_mR(A,C1, B,C2);]]
:
{{Partie{{{type|}}}|Utilitaire Divers:}}
:
'''Copier le vecteur ligne U en ordre inverse:'''
*[[Mathc matrices/003| c_r_reverse_order_mR(U,V);]]
:
'''Copier le vecteur U dans A sous la forme d'une matrice Hankel:'''
*[[Mathc matrices/006| c_Uc_r_mR(U,Cn, A,R2);]]
{{AutoCat}}
jl2cbd7egcfxnbbzj2vae8jhbo7ir7k
770102
770101
2026-07-31T17:19:57Z
Xhungab
23827
770102
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
:
[[Mathc_matrices/Sommaire| Sommaire]]
{{Partie{{{type|}}}|'''Copier des matrices'''}}
:
'''Copier un tableau de nombres dans une matrice:'''
* [[Mathc matrices/Fichiers c : c_a_a| ca_A_mR();]]
:
'''Copier un nombre dans une matrice:'''
* [[Mathc matrices/a03d| c_s_mR();]]
:
'''Copier une matrice A dans une matrice B:'''
*[[Mathc matrices/c11a4| c_mR(A,B);]]
*[[Mathc matrices/h07a| c_mR(A,B); ... ... ... A[R2,C3]->B[R3,C6]]]
:
:
{{Partie{{{type|}}}|Utilitaire pour les lignes et les colonnes:}}
:
'''Copier une colonne ou une ligne de la matrice A dans la matrice B:'''
*[[Mathc matrices/c11a5| c_c_mR(A,C1,B,C2);]]
*[[Mathc matrices/c11a6| c_r_mR(A,R1,B,R2);]]
:
'''Copier une colonne (ligne) de la matrice A dans une ligne (colonne) de la matrice B:'''
*[[Mathc matrices/c11b4| c_c_r_mR(A,C1,B,R2);]]
*[[Mathc matrices/0en| c_r_c_mR(A,R1,B,C2);]]
:
'''Copier une ligne R1 dans la ligne R2 d'une matrice:'''
*[[Mathc matrices/b0a4c| c_r1r2_mR(A,R1, R2);]]
:
'''Copier n lignes d'une matrice A dans une matrice B:'''
*[[Mathc matrices/c101i| c_nr_mR(A,nR, B);]]
:
'''Copier une matrice diagonale dans une matrice d'une colonne:'''
* [[Mathc matrices/h09z|c_D_c_mR(D,U);]]
:
'''Copier une matrice d'une colonne dans une matrice diagonale:'''
* [[Mathc matrices/022|c_c_D_mR(U,D);]]
:
{{Partie{{{type|}}}|Utilitaire pour Gauss-Jordan:}}
:
'''Copier A et b dans Ab Gauss-Jordan:'''
*[[Mathc matrices/c21k| c_A_b_Ab_mR(A,b, Ab); ]]
:
'''Copier A de Ab dans A, et b de Ab dans b:'''
*[[Mathc matrices/c21l| c_Ab_A_mR(Ab, A); ... c_Ab_b_mR(Ab, b);]]
:
'''Copier la sous-matrice de Ab dans subA:'''
*[[Mathc matrices/c12ec1| c_Ab_subArxr_mR(Ab, subA);]]
:
'''Copier la matrice inverse du système Ab dans la matrice invA:'''
* [[Mathc matrices/a34|c_Inv_A_mR(Ab, invA);]]
:
{{Partie{{{type|}}}|Utilitaire pour l'index (R0):}}
:
'''Copier une matrice avec la ligne zéro (R0 : Index de position des colonnes)'''
*[[Mathc matrices/c101j| c_withR0_mR(A,B);]]
:
'''Copier une colonne avec son indice dans une autre colonne:'''
*[[Mathc matrices/b0a4b| c_c_withR0_mR(A,C1, B,C2);]]
:
{{Partie{{{type|}}}|Utilitaire Divers:}}
:
'''Copier le vecteur ligne U en ordre inverse:'''
*[[Mathc matrices/003| c_r_reverse_order_mR(U,V);]]
:
'''Copier le vecteur U dans A sous la forme d'une matrice Hankel:'''
*[[Mathc matrices/006| c_Uc_r_mR(U,Cn, A,R2);]]
{{AutoCat}}
o076a7pbw048gqj7dvw1sp1z6ilk5ka
Mathc matrices/0b7
0
84111
770108
770090
2026-07-31T18:21:05Z
Xhungab
23827
770108
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* Vecteur avec poids ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0b3|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* Une matrice orthonormale aléatoire ....... : [[Mathc matrices/0e8| c00l.c ]]
* Vérifions le calcul ................................... : [[Mathc matrices/0eq| c00l.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
cdgoew9jz681d5wokwh32l4le5iwvh5
770110
770108
2026-07-31T18:25:48Z
Xhungab
23827
770110
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* Vecteur avec poids ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0b3|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* Une matrice orthonormale aléatoire ....... : [[Mathc matrices/0e8| c00l.c ]]
* Vérifions le calcul ................................... : [[Mathc matrices/0eq| c00m.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
1wik2rldo2w2kabde3n15ugp60r0u0v
770115
770110
2026-07-31T21:12:38Z
Xhungab
23827
770115
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* Vecteur avec poids ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0b3|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* Orthogonals vecteurs :
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
8zr3h9j4egr8f072fjrx0mjhvl2isd7
770117
770115
2026-07-31T21:31:48Z
Xhungab
23827
770117
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* Vecteur avec poids ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0b3|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
6ponqxx9dsf93bzkvjponfbha8w6zu5
770139
770117
2026-08-01T09:43:31Z
Xhungab
23827
770139
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* Vecteur avec poids ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0b3|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ez| c00p.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
eteimd9umj8fsf5d7sgoxjis5g14w6z
770142
770139
2026-08-01T09:53:30Z
Xhungab
23827
770142
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le '''produit scalaire avec poids''' ............ : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0b3|c00h.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* '''Vecteurs Orthonormales''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* '''Vecteurs Orthogonals''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ez| c00p.c ]]
* La factorisation '''QR''' avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
qx49ni5v9hnbmqh10p1w7zpyohrnp1s
770146
770142
2026-08-01T10:08:42Z
Xhungab
23827
770146
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le '''produit scalaire avec poids''' ............ : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0b3|c00h.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* '''Vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ez| c00p.c ]]
* La factorisation '''QR''' avec poids ............... : [[Mathc matrices/0b6| c00k.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
tokl77lgky62wtmfz37ipiam871kpm0
770149
770146
2026-08-01T11:35:55Z
Xhungab
23827
770149
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le '''produit scalaire avec poids''' ............ : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0b3|c00h.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* '''Vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ez| c00p.c ]]
* '''QR''' avec poids ('''Rn = Cn''') ......................... : [[Mathc matrices/0f0| c00i.c]] ... ... ... [[Mathc matrices/0bh|amul_mR(); ... ... ... aQR_mR(); ]]
* '''QR''' avec poids ('''Rn > C'''n) ......................... : [[Mathc matrices/0b6| c00k.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
p8bbtwam8i3370psi0vm7gwyqmmv4z4
770150
770149
2026-08-01T11:36:51Z
Xhungab
23827
770150
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (1) : <u.v> = v^t D u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fwdot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0b8|fwdot.h ............ Les fonctions]]
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0ax|c00a.c ]]
* Le '''produit scalaire avec poids''' ............ : [[Mathc matrices/0ay|c00b.c ]] ... ... ... [[Mathc matrices/0b9|wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0az|c00d.c ]] ... ... ... [[Mathc matrices/0ba|wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0b0|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0b1|c00f.c ]] ... ... ... [[Mathc matrices/0bc|wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dt|c00l.c ]] ... ... ... [[Mathc matrices/0du|wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0b2|c00g.c ]] ... ... ... [[Mathc matrices/0bd|wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0b3|c00h.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0b4| c00i.c ]] ... ... ... [[Mathc matrices/0bf|worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0b5|c00j.c]] ... ... ... [[Mathc matrices/0bg|wNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e8| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eq| c00m.c ]]
* '''Vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0es| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0er| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ez| c00p.c ]]
* '''QR''' avec poids ('''Rn = Cn''') ......................... : [[Mathc matrices/0f0| c00i.c]] ... ... ... [[Mathc matrices/0bh|wmul_mR(); ... ... ... wQR_mR(); ]]
* '''QR''' avec poids ('''Rn > C'''n) ......................... : [[Mathc matrices/0b6| c00k.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0ej| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ek| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0el| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0em| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0ch| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0ci| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dc| ... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0cj| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0ck| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
oq4cxs3f99kyojntjv7d1suzptyokm7
Mathc matrices/0b6
0
84121
770148
769679
2026-08-01T11:31:42Z
Xhungab
23827
770148
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00k.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00k.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
void fun(int r,int rn)
{
double **D = rpdiag_mR( i_mR(r+rn,r+rn),9.);
double **U = r_mR( i_mR(r+rn,r),9.);
double **Q = i_mR(r+rn,r);
double **R = i_mR(r,r);
clrscrn();
printf(" D : d_i > 0");
p_mR(D,S3,P3, C8);
printf(" U :");
p_mR(U,S3,P3, C6);
stop();
clrscrn();
wQR_mR(D,U,Q,R);
printf(" Q :");
p_mR(Q,S3,P5, C6);
printf(" R :");
p_mR(R,S10,P5, C6);
stop();
clrscrn();
printf(" U :");
p_mR(U,S3,P3, C6);
printf(" U = Q * R :");
mul_mR(Q,R, U);
p_mR(U,S3,P3, C6);
f_mR(D);
f_mR(U);
f_mR(Q);
f_mR(R);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R1,rp_I(R3));
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
D : d_i > 0
+2.000 +0.000 +0.000 +0.000 +0.000 +0.000
+0.000 +8.000 +0.000 +0.000 +0.000 +0.000
+0.000 +0.000 +6.000 +0.000 +0.000 +0.000
+0.000 +0.000 +0.000 +8.000 +0.000 +0.000
+0.000 +0.000 +0.000 +0.000 +3.000 +0.000
+0.000 +0.000 +0.000 +0.000 +0.000 +3.000
U :
+6.000 +1.000 +4.000 -7.000
+4.000 -5.000 -1.000 +8.000
+2.000 +3.000 -3.000 +8.000
-1.000 -8.000 -7.000 -6.000
+8.000 +2.000 +3.000 -1.000
-6.000 +9.000 -1.000 +2.000
Press return to continue.
Q :
+0.26013 +0.09060 +0.07536 -0.32320
+0.17342 -0.12120 -0.00725 +0.23252
+0.08671 +0.11566 -0.32506 +0.08481
-0.04336 -0.26614 -0.17077 -0.14360
+0.34684 +0.14217 -0.06490 -0.22294
-0.26013 +0.22987 -0.18999 +0.02101
R :
+23.06513 -7.02359 +5.46279 +11.09901
+0.00000 +31.20367 +15.10618 +10.25376
+0.00000 -0.00000 +16.06117 -9.87019
+0.00000 -0.00000 -0.00000 +31.16491
Press return to continue.
U :
+6.000 +1.000 +4.000 -7.000
+4.000 -5.000 -1.000 +8.000
+2.000 +3.000 -3.000 +8.000
-1.000 -8.000 -7.000 -6.000
+8.000 +2.000 +3.000 -1.000
-6.000 +9.000 -1.000 +2.000
U = Q * R :
+6.000 +1.000 +4.000 -7.000
+4.000 -5.000 -1.000 +8.000
+2.000 +3.000 -3.000 +8.000
-1.000 -8.000 -7.000 -6.000
+8.000 +2.000 +3.000 -1.000
-6.000 +9.000 -1.000 +2.000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
qtr6nrn5vnhe7rkvj0y8q8bloektgbh
Mathc matrices/0b8
0
84122
770114
770018
2026-07-31T20:52:52Z
Xhungab
23827
770114
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
'''Ce fichier est spécifique pour ce travail. Il ne doit pas être conservé avec la bibliothèque.'''
Installer ces fichiers dans votre répertoire de travail.
{{Fichier|fwdot.h|largeur=70%|info=|icon=Crystal Clear mimetype source h.png}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : fwdot.h */
/* ------------------------------------ */
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
double wdot_R(
double **D,
double **u,
double **v
)
{
double **vt = transpose_mR(v, i_mR(R1,rsize_R(v)));
double **vtD = mul_mR(vt,D, i_mR(R1,rsize_R(v)));
double **vtDu = mul_mR(vtD,u, i_mR(R1,C1 ));
double wdot = vtDu[R1][C1];
f_mR(vt);
f_mR(vtD);
f_mR(vtDu);
return (wdot);
}
/* ------------------------------------ */
/* ------ ||u|| = <u.u>^(1/2) ------- */
/* ------------------------------------ */
double wnorm_R(
double **D,
double **u
)
{
return ( pow( wdot_R(D,u,u),(1./2.)) );
}
/* ------------------------------------ */
/* ------ d(u,v) = ||u-v||^(1/2) ------- */
/* ------------------------------------ */
double wdist_R(
double **D,
double **u,
double **v
)
{
double **umnsv = sub_mR(u,v, i_mR(rsize_R(v),csize_R(v)));
double d = wnorm_R(D,umnsv);
f_mR(umnsv);
return (d);
}
/* ------------------------------------ */
/* cos(alpha) = <p,q> / ||p|| ||q|| */
/* ------------------------------------ */
double wcos_R(
double **D,
double **u,
double **v
)
{
return(( wdot_R(D,u,v)
/
( wnorm_R(D,u) * wnorm_R(D,v))
));
}
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
double **wproj_mR(
double **D,
double **u,
double **v,
double **projuv
)
{
/* <u,v> / ||v||^2 */
double s = wdot_R(D,u,v) / wdot_R(D,v,v);
/* (<u,v>/||v||^2) v */
smul_mR(s,v,projuv);
return(projuv);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
double **worth_mR(
double **D,
double **U,
double **Orth
)
{
double **u1 = i_mR(rsize_R(U),C1);
double **u2 = i_mR(rsize_R(U),C1);
double **orth = i_mR(rsize_R(U),C1);
double **projuv = i_mR(rsize_R(U),C1);
int c_U;
int c_Orth;
c_c_mR(U,C1, Orth,C1);
for( c_U = C2; c_U < U[C_SIZE][C0]; c_U++)
{
c_c_mR(U,c_U, u1,C1);
c_c_mR(U,c_U, u2,C1);
for( c_Orth = C1; c_Orth < c_U; c_Orth++)
{
c_c_mR(Orth,c_Orth, orth,C1);
wproj_mR(D,u1,orth,projuv);
sub_mR(u2,projuv,orth);
c_mR(orth,u2);
}
c_c_mR(u2,C1, Orth,c_Orth);
}
f_mR(u1);
f_mR(u2);
f_mR(orth);
f_mR(projuv);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
double **wNormalize_mR(
double **D,
double **Orth
)
{
double **u = i_mR(rsize_R(Orth),C1);
double **Nu = i_mR(rsize_R(Orth),C1);
int c_Orth = csize_R(Orth);
int c;
for( c = C1; c <= c_Orth; c++)
{
c_c_mR(Orth,c, u,C1);
smul_mR(1./wnorm_R(D,u),u,Nu);
c_c_mR(Nu,C1, Orth,c);
}
f_mR(u);
f_mR(Nu);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
double **wmul_mR(
double **D,
double **U,
double **Q,
double **R
)
{
double **u = i_mR(rsize_R(U),C1);
double **q = i_mR(rsize_R(U),C1);
int c1;
int c2;
for ( c1=C1; c1<U[C_SIZE][C0]; c1++)
for ( c2=C1; c2<U[C_SIZE][C0]; c2++)
{
c_c_mR(Q,c1, q,C1);
c_c_mR(U,c2, u,C1);
R[c1][c2] = wdot_R(D,u,q);
}
f_mR(u);
f_mR(q);
return(R);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **wr_q_mR(
double **D,
double **Q,
int n
)
{
int rc = Q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
worth_mR(D,U,Q);
f_mR(U);
return(Q);
}
/* ------------------------------------ */
double **wr_Q_mR(
double **D,
double **Q,
int n
)
{
int rc = Q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
worth_mR(D,U,Q);
wNormalize_mR(D,Q);
f_mR(U);
return(Q);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t D u ------- */
/* ------------------------------------ */
void wQR_mR(
double **D,
double **U,
double **Q,
double **R)
{
worth_mR(D,U,Q);
wNormalize_mR(D,Q);
wmul_mR(D,U,Q,R);
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
{{AutoCat}}
kl7vzrfybsdicandg32m33ncz5nl1ld
Mathc matrices/0c0
0
84130
770106
770085
2026-07-31T18:13:02Z
Xhungab
23827
770106
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* Vecteur avec poids ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0bt|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* Une matrice orthonormale aléatoire ....... : [[Mathc matrices/0e9| c00l.c ]]
* Vérifions le calcul ................................... : [[Mathc matrices/0ep| c00k.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
ryhselrnmxsv18a70hy9x8r8lcojbau
770112
770106
2026-07-31T18:27:23Z
Xhungab
23827
770112
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* Vecteur avec poids ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0bt|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* Une matrice orthonormale aléatoire ....... : [[Mathc matrices/0e9| c00l.c ]]
* Vérifions le calcul ................................... : [[Mathc matrices/0ep| c00m.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
beqnba6ewtrssb8jpubg4sioawpljai
770120
770112
2026-08-01T08:22:13Z
Xhungab
23827
770120
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* Vecteur avec poids ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0bt|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e9| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0ep| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0et| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0eu| c00n.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
0lo38gjv4yjwh1yzk14wkomc3607oek
770135
770120
2026-08-01T09:35:42Z
Xhungab
23827
770135
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* Vecteur avec poids ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le produit scalaire avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0bt|c00h.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e9| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0ep| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0et| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0eu| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ey| c00p.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
dm8n9znouk7sxdhwnklivck2uawpqhn
770143
770135
2026-08-01T09:57:25Z
Xhungab
23827
770143
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le '''produit scalaire''' avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0bt|c00h.c ]]
* '''Orthogonaliser la matrice U''' ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* '''Vecteurs Orthonormales''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e9| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0ep| c00m.c ]]
* '''vecteurs Orthogonals''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0et| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0eu| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ey| c00p.c ]]
* La factorisation '''QR''' avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
pxnjb2veuo1in5f7ffulemkaicoi0z0
770145
770143
2026-08-01T10:07:49Z
Xhungab
23827
770145
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le '''produit scalaire''' avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0bt|c00h.c ]]
* '''Orthogonaliser la matrice U''' ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e9| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0ep| c00m.c ]]
* '''vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0et| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0eu| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ey| c00p.c ]]
* La factorisation '''QR''' avec poids ............... : [[Mathc matrices/0by| c00k.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
k61obh3bji7sgrl58xalyvqcehkwebi
770152
770145
2026-08-01T11:48:41Z
Xhungab
23827
770152
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire avec poids (2) : <u.v> = v^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fw2dot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0bi|fw2dot.h ............ Les fonctions]]
'''Dans ce produit scalaires la matrice A, la matrice de poids est une matrice définie positive. Dans la version 1 la matrice de poids D, était une matrice diagonale avec des coefficients positifs.'''
* '''Vecteur avec poids''' ............................... : [[Mathc matrices/0bj|c00a.c ]]
* Le '''produit scalaire''' avec poids .............. : [[Mathc matrices/0bk|c00b.c ]] ... ... ... [[Mathc matrices/0bl|Wdot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0bm|c00d.c ]] ... ... ... [[Mathc matrices/0bn|Wnorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0bo|c00e.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0bp|c00f.c ]] ... ... ... [[Mathc matrices/0bq|Wdist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dv|c00l.c ]] ... ... ... [[Mathc matrices/0dw|Wcos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0br|c00g.c ]] ... ... ... [[Mathc matrices/0bs|Wproj_mR(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0bt|c00h.c ]]
* '''Orthogonaliser la matrice U''' ................... : [[Mathc matrices/0bu| c00i.c ]] ... ... ... [[Mathc matrices/0bv|Worth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0bw|c00j.c]] ... ... ... [[Mathc matrices/0bx|WNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0e9| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0ep| c00m.c ]]
* '''vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0et| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0eu| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ey| c00p.c ]]
* '''QR''' avec poids ('''Rn = Cn''') ......................... : [[Mathc matrices/0f1| c00i.c]] ... ... ... [[Mathc matrices/0bz|Wmul_mR(); ... ... ... WQR_mR(); ]]
* '''QR''' avec poids ('''Rn > C'''n) ......................... : [[Mathc matrices/0by| c00k.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0ef| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0eg| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0eh| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0ei| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0cl| ........ ||u||^2 + ||v||^2 - ||u - v||^2 '''=''' 2 <u,v> ]]
* [[Mathc matrices/0cm| .................... 2 ||u||^2 + 2 ||v||^2 '''=''' ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0dd| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 '''=''' <u,v> ]]
* [[Mathc matrices/0cn| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0co| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
dlv4vkb6eef8efr2np3c4urig2p8na6
Mathc matrices/0bi
0
84131
770123
770020
2026-08-01T08:27:59Z
Xhungab
23827
770123
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
'''Ce fichier est spécifique pour ce travail. Il ne doit pas être conservé avec la bibliothèque.'''
Installer ces fichiers dans votre répertoire de travail.
{{Fichier|fw2dot.h|largeur=70%|info=|icon=Crystal Clear mimetype source h.png}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : fw2dot.h */
/* ------------------------------------ */
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double Wdot_R(
double **A,
double **u,
double **v
)
{
double **vt = transpose_mR(v, i_mR(R1,rsize_R(v)));
double **vtA = mul_mR(vt,A, i_mR(R1,rsize_R(v)));
double **vtAu = mul_mR(vtA,u, i_mR(R1,C1 ));
double wdot = vtAu[R1][C1];
f_mR(vt);
f_mR(vtA);
f_mR(vtAu);
return (wdot);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double Wnorm_R(
double **A,
double **u
)
{
return ( pow( Wdot_R(A,u,u),(1./2.)) );
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double Wdist_R(
double **A,
double **u,
double **v
)
{
double **umnsv = sub_mR(u,v, i_mR(rsize_R(v),csize_R(v)));
double d = Wnorm_R(A,umnsv);
f_mR(umnsv);
return (d);
}
/* ------------------------------------ */
/* cos(alpha) = <p,q> / ||p|| ||q|| */
/* ------------------------------------ */
double Wcos_R(
double **A,
double **u,
double **v
)
{
return(( Wdot_R(A,u,v)
/
( Wnorm_R(A,u) * Wnorm_R(A,v))
));
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double **Wproj_mR(
double **A,
double **u,
double **v,
double **projuv
)
{
/* <u,v> / ||v||^2 */
double s = Wdot_R(A,u,v) / Wdot_R(A,v,v);
/* (<u,v>/||v||^2) v */
smul_mR(s,v,projuv);
return(projuv);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double **Worth_mR(
double **A,
double **U,
double **Orth
)
{
double **u1 = i_mR(rsize_R(U),C1);
double **u2 = i_mR(rsize_R(U),C1);
double **orth = i_mR(rsize_R(U),C1);
double **projuv = i_mR(rsize_R(U),C1);
int c_U;
int c_Orth;
c_c_mR(U,C1, Orth,C1);
for( c_U = C2; c_U < U[C_SIZE][C0]; c_U++)
{
c_c_mR(U,c_U, u1,C1);
c_c_mR(U,c_U, u2,C1);
for( c_Orth = C1; c_Orth < c_U; c_Orth++)
{
c_c_mR(Orth,c_Orth, orth,C1);
Wproj_mR(A,u1,orth,projuv);
sub_mR(u2,projuv,orth);
c_mR(orth,u2);
}
c_c_mR(u2,C1, Orth,c_Orth);
}
f_mR(u1);
f_mR(u2);
f_mR(orth);
f_mR(projuv);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double **WNormalize_mR(
double **A,
double **Orth
)
{
double **u = i_mR(rsize_R(Orth),C1);
double **Nu = i_mR(rsize_R(Orth),C1);
int c_Orth = csize_R(Orth);
int c;
for( c = C1; c <= c_Orth; c++)
{
c_c_mR(Orth,c, u,C1);
smul_mR(1./Wnorm_R(A,u),u,Nu);
c_c_mR(Nu,C1, Orth,c);
}
f_mR(u);
f_mR(Nu);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
double **Wmul_mR(
double **A,
double **U,
double **Q,
double **R
)
{
double **u = i_mR(rsize_R(U),C1);
double **q = i_mR(rsize_R(U),C1);
int c1;
int c2;
for ( c1=C1; c1<U[C_SIZE][C0]; c1++)
for ( c2=C1; c2<U[C_SIZE][C0]; c2++)
{
c_c_mR(Q,c1, q,C1);
c_c_mR(U,c2, u,C1);
R[c1][c2] = Wdot_R(A,u,q);
}
f_mR(u);
f_mR(q);
return(R);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **Wr_Q_mR(
double **D,
double **Q,
int n
)
{
int rc = Q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
Worth_mR(D,U,Q);
WNormalize_mR(D,Q);
f_mR(U);
return(Q);
}
/* ------------------------------------ */
double **Wr_q_mR(
double **D,
double **q,
int n
)
{
int rc = q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
Worth_mR(D,U,q);
f_mR(U);
return(q);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A u ------- */
/* ------------------------------------ */
void WQR_mR(
double **A,
double **U,
double **Q,
double **R)
{
Worth_mR(A,U,Q);
WNormalize_mR(A,Q);
Wmul_mR(A,U,Q,R);
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
{{AutoCat}}
f9cwr9ycdux80lgv05oznbpenwfomp8
Mathc matrices/0by
0
84141
770153
769718
2026-08-01T11:50:26Z
Xhungab
23827
770153
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00k.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00k.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
void fun(int r,int rn)
{
double **A = rdefinite_positive_mR( i_mR(r+rn,r+rn),9.);
double **U = r_mR( i_mR(r+rn,r),9.);
double **Q = i_mR(r+rn,r);
double **R = i_mR(r,r);
clrscrn();
printf(" A :");
p_mR(A,S5,P0, C8);
printf(" U :");
p_mR(U,S3,P0, C6);
stop();
clrscrn();
WQR_mR(A,U,Q,R);
printf(" Q :");
p_mR(Q,S3,P5, C6);
printf(" R :");
p_mR(R,S10,P5, C6);
stop();
clrscrn();
printf(" U :");
p_mR(U,S3,P3, C6);
printf(" U = Q * R :");
mul_mR(Q,R, U);
p_mR(U,S3,P3, C6);
f_mR(A);
f_mR(U);
f_mR(Q);
f_mR(R);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R1,rp_I(R3));
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
A :
+300 -46 +4 +14 -5 +178 +112 -112
-46 +312 +58 +51 +165 -164 -145 +79
+4 +58 +185 -41 -16 +66 +19 -58
+14 +51 -41 +260 -27 +1 +30 -56
-5 +165 -16 -27 +147 -141 -117 +119
+178 -164 +66 +1 -141 +299 +123 -214
+112 -145 +19 +30 -117 +123 +216 -67
-112 +79 -58 -56 +119 -214 -67 +308
U :
-7 -2 +7 +7 +7
-4 -1 -7 +1 +9
-9 +5 -3 +7 -1
-5 -2 -4 -6 -1
+9 +4 +6 +4 +1
-9 -3 -9 -9 -3
-3 -7 -1 -6 +7
+9 -1 -4 -1 -9
Press return to continue.
Q :
-0.01428 -0.00291 +0.05188 +0.03666 -0.02517
-0.00816 -0.00069 -0.04393 +0.05648 +0.04342
-0.01836 +0.04771 +0.00207 +0.00999 -0.05066
-0.01020 -0.00597 -0.02459 -0.01310 +0.00718
+0.01836 +0.01346 +0.03704 -0.03499 +0.03609
-0.01836 -0.00666 -0.05508 -0.00405 -0.00800
-0.00612 -0.04300 -0.01757 +0.03079 +0.04269
+0.01836 -0.02053 -0.04065 +0.03736 -0.05434
R :
+490.08061 +110.00435 +60.16969 +115.43407 -153.14011
-0.00000 +147.13614 -46.16764 +163.53392 +22.08213
+0.00000 -0.00000 +148.90990 +96.91326 +77.65014
+0.00000 +0.00000 -0.00000 +111.77411 +105.58869
-0.00000 -0.00000 +0.00000 +0.00000 +120.05403
Press return to continue.
U :
-7.000 -2.000 +7.000 +7.000 +7.000
-4.000 -1.000 -7.000 +1.000 +9.000
-9.000 +5.000 -3.000 +7.000 -1.000
-5.000 -2.000 -4.000 -6.000 -1.000
+9.000 +4.000 +6.000 +4.000 +1.000
-9.000 -3.000 -9.000 -9.000 -3.000
-3.000 -7.000 -1.000 -6.000 +7.000
+9.000 -1.000 -4.000 -1.000 -9.000
U = Q * R :
-7.000 -2.000 +7.000 +7.000 +7.000
-4.000 -1.000 -7.000 +1.000 +9.000
-9.000 +5.000 -3.000 +7.000 -1.000
-5.000 -2.000 -4.000 -6.000 -1.000
+9.000 +4.000 +6.000 +4.000 +1.000
-9.000 -3.000 -9.000 -9.000 -3.000
-3.000 -7.000 -1.000 -6.000 +7.000
+9.000 -1.000 -4.000 -1.000 -9.000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
066vuwfneu27zly0kujy2tokdzb1e0h
Mathc matrices/0d5
0
84174
770104
770077
2026-07-31T17:30:13Z
Xhungab
23827
770104
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le produit scalaire ................................. : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0cz|c00f.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* Une matrice orthonormale aléatoire ....... : [[Mathc matrices/0ea| c00l.c ]]
* Vérifions le calcul ................................... : [[Mathc matrices/0eo| c00k.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
9zeowcv38sj5t7h34x0d0vrsumjzhfb
770125
770104
2026-08-01T08:40:27Z
Xhungab
23827
770125
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le produit scalaire ................................. : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0cz|c00f.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0ea| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eo| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0ev| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0ew| c00n.c ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* La factorisation QR avec poids ............... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
qzed8ewkij9zn7q2xml0seadhhmx3cd
770128
770125
2026-08-01T08:49:45Z
Xhungab
23827
770128
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le produit scalaire ................................. : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0cz|c00f.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0ea| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eo| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0ev| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0ew| c00n.c ]]
* QR avec poids (Rn = Cn ) ......................... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* QR avec poids (Rn > Cn ) ......................... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
pfux3fv60gbzkuagm1lnimtei5vkylw
770131
770128
2026-08-01T09:28:02Z
Xhungab
23827
770131
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le produit scalaire ................................. : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la norme .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* Normaliser un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La distance entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le cosinus entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le projeté de u sur v ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de (u - projuv) ...................... : [[Mathc matrices/0cz|c00f.c ]]
* Orthogonaliser la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* Orthonormales vecteurs :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0ea| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eo| c00m.c ]]
* Orthogonals vecteurs :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0ev| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0ew| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ex| c00p.c ]]
* QR avec poids (Rn = Cn ) ......................... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* QR avec poids (Rn > Cn ) ......................... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... [Symmetry axiom]]]
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... [Additivity axiom]]]
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... [Homogeneity axiom]]]
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... [Positivity axiom]]]
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... (Triangle inequality I) ]]
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... (Triangle inequality II) ]]
{{AutoCat}}
c2is6d4t0eyvw28dtyksyoox1zhroo5
770144
770131
2026-08-01T10:06:59Z
Xhungab
23827
770144
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le '''produit scalaire''' ................................. : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0cz|c00f.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* Normaliser la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0ea| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eo| c00m.c ]]
* '''Vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0ev| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0ew| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ex| c00p.c ]]
* '''QR''' avec poids ('''Rn = Cn''') ......................... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* '''QR''' avec poids ('''Rn > C'''n) ......................... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
idjdr4bygjjpx9dzllcgv8ui5g5q0se
770147
770144
2026-08-01T10:13:05Z
Xhungab
23827
770147
wikitext
text/x-wiki
__NOTOC__
[[Catégorie:Mathc matrices (livre)]]
[[Mathc_matrices/Sommaire| Sommaire]]
== '''Produit scalaire dans Rn généré par A (3) : <u.v> = v^t A^t A u''' ==
'''Pour simplifier la bibliothèque, j'ai choisi de ne pas introduire cette version du produit scalaire dans la bibliothèque. Il faudra donc introduire le fichier ''fadot.h'' dans votre répertoire de travail, et le supprimer après la fin de votre étude.'''
'''Copier la bibliothèque dans votre répertoire de travail :'''
* [[Mathc matrices/0cp|fadot.h ............ Les fonctions]]
'''Remarque:'''
* Si nous choisissons pour '''A la matrice identité''', ce produit scalaire est le produit scalaire standard (celui du cours) :
** '''<u,v> = v^t u'''
* Si nous choisissons pour '''A**(1/2) une matrice diagonale''', ce produit scalaire est le produit scalaire standard avec poids (1) :
** '''D = A**(1/2) A**(1/2) = A''' ... ... ... '''<u.v> = v^t D u''' ... ... ... (d_i > 0)
* Le '''produit scalaire''' ............................... : [[Mathc matrices/0cq|c00a.c ]] ... ... ... [[Mathc matrices/0cr|adot_R(); ]]
* Calculer la '''norme''' .................................. : [[Mathc matrices/0cs|c00b.c ]] ... ... ... [[Mathc matrices/0ct|anorm_R(); ]]
* '''Normaliser''' un vecteur .......................... : [[Mathc matrices/0cu|c00c.c ]]
* La '''distance''' entre deux vecteurs ........... : [[Mathc matrices/0cv|c00d.c ]] ... ... ... [[Mathc matrices/0cw|adist_R(); ]]
* Le '''cosinus''' entre deux vecteurs ............ : [[Mathc matrices/0dx|c00l.c ]] ... ... ... [[Mathc matrices/0dy|acos_R(); ]]
* Le '''projeté de u sur v''' ............................. : [[Mathc matrices/0cx|c00e.c ]] ... ... ... [[Mathc matrices/0cy|aproj_mR();(); ]]
* Propriétés de ('''u - projuv''') ...................... : [[Mathc matrices/0cz|c00f.c ]]
* '''Orthogonaliser''' la matrice U ................... : [[Mathc matrices/0d0| c00g.c ]] ... ... ... [[Mathc matrices/0d2|aorth_mR(); ]]
* '''Normaliser''' la matrice U ......................... : [[Mathc matrices/0d1|c00h.c]] ... ... ... [[Mathc matrices/0d6|aNormalize_mR(); ]]
* '''Vecteurs orthonormaux''' :
** Une matrice orthonormale aléatoire ... : [[Mathc matrices/0ea| c00l.c ]]
** Vérifions le calcul ............................... : [[Mathc matrices/0eo| c00m.c ]]
* '''Vecteurs orthogonaux''' :
** Une matrice orthogonal aléatoire ....... : [[Mathc matrices/0ev| c00o.c ]]
** ||u||^2 + ||v||^2 = ||u + v||^2 ................. : [[Mathc matrices/0ew| c00n.c ]]
** ||u||^2+||v||^2+||w||^2 = ||u+v+w||^2 .... : [[Mathc matrices/0ex| c00p.c ]]
* '''QR''' avec poids ('''Rn = Cn''') ......................... : [[Mathc matrices/0d3| c00i.c]] ... ... ... [[Mathc matrices/0d4|amul_mR(); ... ... ... aQR_mR(); ]]
* '''QR''' avec poids ('''Rn > C'''n) ......................... : [[Mathc matrices/0d7| c00j.c]]
== Propriétés par axioms ==
* [[Mathc matrices/0eb| <u,v> = <v,u> ......................... ]] Symmetry axiom
* [[Mathc matrices/0ec| <u+v,w> = <u,w>+<v,w> ......... ]] Additivity axiom
* [[Mathc matrices/0ed| <ku,v> = k<u,v> ...................... ]] Homogeneity axiom
* [[Mathc matrices/0ee| <u,u> = 0 if and only if u = 0 ... ]] Positivity axiom
== Quelques propriétées ==
* [[Mathc matrices/0d8| ........ ||u||^2 + ||v||^2 - ||u - v||^2 = 2 <u,v> ]]
* [[Mathc matrices/0d9| .................... 2 ||u||^2 + 2 ||v||^2 = ||u + v||^2 + ||u - v||^2 ]]
* [[Mathc matrices/0de| .... 1/4 ||u + v||^2 - 1/4 ||u - v||^2 = <u,v>]]
* [[Mathc matrices/0da| ||u + v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality I
* [[Mathc matrices/0db| ||u - v|| <= ||u|| + ||v|| ...................... ]] Triangle inequality II
{{AutoCat}}
sfywttafk0w0v2w4zrifkerllwnw517
Mathc matrices/0cp
0
84175
770129
770021
2026-08-01T08:51:20Z
Xhungab
23827
770129
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
'''Ce fichier est spécifique pour ce travail. Il ne doit pas être conservé avec la bibliothèque.'''
Installer ces fichiers dans votre répertoire de travail.
{{Fichier|fadot.h|largeur=70%|info=|icon=Crystal Clear mimetype source h.png}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : fadot.h */
/* ------------------------------------ */
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
double adot_R(
double **A,
double **u,
double **v
)
{
double **At = transpose_mR(A, i_mR(csize_R(A), rsize_R(A)));
double **vt = transpose_mR(v, i_mR(R1, rsize_R(v)));
double **vtAt = mul_mR(vt,At, i_mR(R1, rsize_R(v)));
double **vtAtA = mul_mR(vtAt,A, i_mR(R1, rsize_R(v)));
double **vtAtAu = mul_mR(vtAtA,u, i_mR(R1, C1));
double dotAuAv = vtAtAu[R1][C1];
f_mR(At);
f_mR(vt);
f_mR(vtAt);
f_mR(vtAtA);
f_mR(vtAtAu);
return (dotAuAv);
}
/* ------------------------------------ */
/* ------ ||u|| = <u.u>^(1/2) ------- */
/* ------------------------------------ */
double anorm_R(
double **A,
double **u
)
{
return ( pow( adot_R(A,u,u),(1./2.)) );
}
/* ------------------------------------ */
/* ------ d(u,v) = ||u-v||^(1/2) ------- */
/* ------------------------------------ */
double adist_R(
double **A,
double **u,
double **v
)
{
double **umnsv = sub_mR(u,v, i_mR(rsize_R(v),csize_R(v)));
double d = anorm_R(A,umnsv);
f_mR(umnsv);
return(d);
}
/* ------------------------------------ */
/* cos(alpha) = <p,q> / ||p|| ||q|| */
/* ------------------------------------ */
double acos_R(
double **A,
double **u,
double **v
)
{
return(( adot_R(A,u,v)
/
( anorm_R(A,u) * anorm_R(A,v))
));
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
double **aproj_mR(
double **A,
double **u,
double **v,
double **projuv
)
{
/* <u,v> / ||v||^2 */
double s = adot_R(A,u,v) / adot_R(A,v,v);
/* (<u,v>/||v||^2) v */
smul_mR(s,v,projuv);
return(projuv);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
double **aorth_mR(
double **A,
double **U,
double **Orth
)
{
double **u1 = i_mR(rsize_R(U),C1);
double **u2 = i_mR(rsize_R(U),C1);
double **orth = i_mR(rsize_R(U),C1);
double **projuv = i_mR(rsize_R(U),C1);
int c_U;
int c_Orth;
c_c_mR(U,C1, Orth,C1);
for( c_U = C2; c_U < U[C_SIZE][C0]; c_U++)
{
c_c_mR(U,c_U, u1,C1);
c_c_mR(U,c_U, u2,C1);
for( c_Orth = C1; c_Orth < c_U; c_Orth++)
{
c_c_mR(Orth,c_Orth, orth,C1);
aproj_mR(A,u1,orth,projuv);
sub_mR(u2,projuv,orth);
c_mR(orth,u2);
}
c_c_mR(u2,C1, Orth,c_Orth);
}
f_mR(u1);
f_mR(u2);
f_mR(orth);
f_mR(projuv);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
double **aNormalize_mR(
double **A,
double **Orth
)
{
double **u = i_mR(rsize_R(Orth),C1);
double **Nu = i_mR(rsize_R(Orth),C1);
int c_Orth = csize_R(Orth);
int c;
for( c = C1; c <= c_Orth; c++)
{
c_c_mR(Orth,c, u,C1);
smul_mR(1./anorm_R(A,u),u,Nu);
c_c_mR(Nu,C1, Orth,c);
}
f_mR(u);
f_mR(Nu);
return(Orth);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
double **amul_mR(
double **A,
double **U,
double **Q,
double **R
)
{
double **u = i_mR(rsize_R(U),C1);
double **q = i_mR(rsize_R(U),C1);
int c1;
int c2;
for ( c1=C1; c1<U[C_SIZE][C0]; c1++)
for ( c2=C1; c2<U[C_SIZE][C0]; c2++)
{
c_c_mR(Q,c1, q,C1);
c_c_mR(U,c2, u,C1);
R[c1][c2] = adot_R(A,u,q);
}
f_mR(u);
f_mR(q);
return(R);
}
/* ------------------------------------ */
/* ------------------------------------ */
double **ar_Q_mR(
double **A,
double **Q,
int n
)
{
int rc = Q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
aorth_mR(A,U,Q);
aNormalize_mR(A,Q);
f_mR(U);
return(Q);
}
/* ------------------------------------ */
double **ar_q_mR(
double **A,
double **q,
int n
)
{
int rc = q[R_SIZE][C0]-C1;
double **U = r_mR(i_mR(rc,rc),n);
aorth_mR(A,U,q);
f_mR(U);
return(q);
}
/* ------------------------------------ */
/* ------- <u.v> = v^t A^t A u ------- */
/* ------------------------------------ */
void aQR_mR(
double **A,
double **U,
double **Q,
double **R)
{
aorth_mR(A,U,Q);
aNormalize_mR(A,Q);
amul_mR(A,U,Q,R);
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
{{AutoCat}}
50cy15ha7f4p343h3q24eun107vy5vo
Utilisateur:Goelette Cardabela/Ehpad AK
2
84239
770099
770083
2026-07-31T14:59:27Z
Goelette Cardabela
9378
/* le matin */ [[WL:RD]] : ! mise en page
770099
wikitext
text/x-wiki
[[Catégorie:EHPAD_AK]]
== Présentation ==
Me voici dans ma page d'élucubrations. Je viens de la créer car je sens que ma mémoire vagabonde fout le camp. Je suis en EHPAD<ref>EHPAD: Établissement d'hébergement pour personnes âgées dépendantes </ref> Alfred Kermes depuis neuf mois environ et je côtoie une quarantaine de résidents dont les déficiences cognitives sont plus ou moins prononcées, quel est mon avenir dans cet établissement ?
[[Discussion_utilisateur:Goelette_Cardabela/Ehpad_AK|Discussion]]
== La journée du résident ==
=== le matin ===
La journée commence vers 7 heures avec le petit déjeuner elle est suivie par les soins infirmiers du matin et la distribution des médicaments. Lorsque les soins sont terminés, si on est suffisamment valide on passe au lavage du corps et à l'habillement.<br/>
Vers 10 heures et demi l'animateur<sup>ou l'animatrice</sup> lit les nouvelles du Midi-Libre et l'horoscope, ensuite il peut y avoir quelques jeux dans l'attente de l'heure du repas à 11 heures et demi.<br/>
Le personnel de service sert le petit déjeuner puis entretient les locaux dès que les résidents quittent leur chambre.
=== L'après midi ===
Après un moment de repos pour tous les résidents commencent les activités très variés de l'après midi. Ces activités seront présentées plus tard. La journée se termine avec le repas du soir à 18 heures en été.
== Exercice de l'Autorité ==
{{/Exercice_de_l'autorité}}
452srx32w1u9f20jqelkhusf5q0sadn
770134
770099
2026-08-01T09:34:43Z
Goelette Cardabela
9378
[[WL:RD]] : ! lien interne
770134
wikitext
text/x-wiki
[[Catégorie:EHPAD_AK]]
== Présentation ==
Me voici dans ma page d'élucubrations. Je viens de la créer car je sens que ma mémoire vagabonde fout le camp. Je suis en EHPAD<ref>EHPAD: Établissement d'hébergement pour personnes âgées dépendantes </ref> Alfred Kermes depuis neuf mois environ et je côtoie une quarantaine de résidents dont les déficiences cognitives sont plus ou moins prononcées, quel est mon avenir dans cet établissement ?
[[Discussion_utilisateur:Goelette_Cardabela/Ehpad_AK|Discussion]]
== La journée du résident ==
=== Le matin ===
La journée commence vers 7 heures avec le petit déjeuner elle est suivie par les soins infirmiers du matin et la distribution des médicaments. Lorsque les soins sont terminés, si on est suffisamment valide on passe au lavage du corps et à l'habillement.<br/>
Vers 10 heures et demi l'animateur<sup>ou l'animatrice</sup> lit les nouvelles du Midi-Libre et l'horoscope, ensuite il peut y avoir quelques jeux dans l'attente de l'heure du repas à 11 heures et demi.<br/>
Le personnel de service sert le petit déjeuner puis entretient les locaux dès que les résidents quittent leur chambre.
=== L'après midi ===
Après un moment de repos pour tous les résidents commencent les activités très variés de l'après midi. Ces activités seront présentées plus tard. La journée se termine avec le repas du soir à 18 heures en été.
== Exercice de l'Autorité ==
{{/Exercice_de_l'autorité}}<br/>
{{/Mon théâtre du matin}}
rfjtnnkvar9hpol5bvuqfl3u6cnqaa3
770138
770134
2026-08-01T09:39:00Z
Goelette Cardabela
9378
/* Exercice de l'Autorité */ [[WL:RD]] : * diverses retouches
770138
wikitext
text/x-wiki
[[Catégorie:EHPAD_AK]]
== Présentation ==
Me voici dans ma page d'élucubrations. Je viens de la créer car je sens que ma mémoire vagabonde fout le camp. Je suis en EHPAD<ref>EHPAD: Établissement d'hébergement pour personnes âgées dépendantes </ref> Alfred Kermes depuis neuf mois environ et je côtoie une quarantaine de résidents dont les déficiences cognitives sont plus ou moins prononcées, quel est mon avenir dans cet établissement ?
[[Discussion_utilisateur:Goelette_Cardabela/Ehpad_AK|Discussion]]
== La journée du résident ==
=== Le matin ===
La journée commence vers 7 heures avec le petit déjeuner elle est suivie par les soins infirmiers du matin et la distribution des médicaments. Lorsque les soins sont terminés, si on est suffisamment valide on passe au lavage du corps et à l'habillement.<br/>
Vers 10 heures et demi l'animateur<sup>ou l'animatrice</sup> lit les nouvelles du Midi-Libre et l'horoscope, ensuite il peut y avoir quelques jeux dans l'attente de l'heure du repas à 11 heures et demi.<br/>
Le personnel de service sert le petit déjeuner puis entretient les locaux dès que les résidents quittent leur chambre.
=== L'après midi ===
Après un moment de repos pour tous les résidents commencent les activités très variés de l'après midi. Ces activités seront présentées plus tard. La journée se termine avec le repas du soir à 18 heures en été.
{{/Exercice_de_l'autorité}}<br/>
{{/Mon théâtre du matin}}<br/>
5xhhfe9cx6w1smz8se87kmz3pkhv8vc
Utilisateur:Goelette Cardabela/Ehpad AK/Exercice de l'autorité
2
84245
770096
770076
2026-07-31T14:34:37Z
Goelette Cardabela
9378
[[WL:RD]] : ! orthographe/grammaire
770096
wikitext
text/x-wiki
Le Directeur des hôpitaux de la Vésubie exerce son autorité depuis son bureau situé à Roquebillière. <br/>
L'autorité locale est exercée par les infirmiers<sup>infirmières</sup>. En cas de conflit c'est l'infirmière coordinatrice qui règle les différentes. Le personnel infirmier est là pour donner les soins aux résidents, pas pour régler les problèmes administratifs.<br/>
Les animateurs<sup>animatrices</sup> ont aussi in rôle d'autorité mais ils sont moins présents que le personnel infirmier.
1gfrdtkf6v8g0rjrx1kpefib3a09aqe
770097
770096
2026-07-31T14:39:18Z
Goelette Cardabela
9378
[[WL:RD]] : + catégorie
770097
wikitext
text/x-wiki
Le Directeur des hôpitaux de la Vésubie exerce son autorité depuis son bureau situé à Roquebillière. <br/>
L'autorité locale est exercée par les infirmiers<sup>infirmières</sup>. En cas de conflit c'est l'infirmière coordinatrice qui règle les différentes. Le personnel infirmier est là pour donner les soins aux résidents, pas pour régler les problèmes administratifs.<br/>
Les animateurs<sup>animatrices</sup> ont aussi in rôle d'autorité mais ils sont moins présents que le personnel infirmier.
[[Catégorie:Ehpad_AK]]
e88rubq2y5chdwtyciuq4a640zt9jml
770098
770097
2026-07-31T14:47:13Z
Goelette Cardabela
9378
[[WL:RD]] : ! catégorie
770098
wikitext
text/x-wiki
Le Directeur des hôpitaux de la Vésubie exerce son autorité depuis son bureau situé à Roquebillière. <br/>
L'autorité locale est exercée par les infirmiers<sup>infirmières</sup>. En cas de conflit c'est l'infirmière coordinatrice qui règle les différentes. Le personnel infirmier est là pour donner les soins aux résidents, pas pour régler les problèmes administratifs.<br/>
Les animateurs<sup>animatrices</sup> ont aussi in rôle d'autorité mais ils sont moins présents que le personnel infirmier.
[[Catégorie:EHPAD_AK]]
e8tg803vqq8dfhn0uswp44z40s2nlpl
770130
770098
2026-08-01T09:02:45Z
Goelette Cardabela
9378
[[WL:RD]] : ! orthographe/grammaire
770130
wikitext
text/x-wiki
Le Directeur des hôpitaux de la Vésubie exerce son autorité depuis son bureau situé à Roquebillière. <br/>
L'autorité locale est exercée par les infirmiers<sup>infirmières</sup>. En cas de conflit c'est l'infirmière coordinatrice qui règle les différents. Le personnel infirmier est là pour donner les soins aux résidents, pas pour régler les problèmes administratifs.<br/>
Les animateurs<sup>animatrices</sup> ont aussi un rôle d'autorité mais ils sont moins présents que le personnel infirmier.
[[Catégorie:EHPAD_AK]]
0jr925qlqylsm4rdhlk2hmodkcf50bg
770136
770130
2026-08-01T09:36:33Z
Goelette Cardabela
9378
[[WL:RD]] : ! mise en page
770136
wikitext
text/x-wiki
== Exercice de l'Autorité ==
Le Directeur des hôpitaux de la Vésubie exerce son autorité depuis son bureau situé à Roquebillière. <br/>
L'autorité locale est exercée par les infirmiers<sup>infirmières</sup>. En cas de conflit c'est l'infirmière coordinatrice qui règle les différents. Le personnel infirmier est là pour donner les soins aux résidents, pas pour régler les problèmes administratifs.<br/>
Les animateurs<sup>animatrices</sup> ont aussi un rôle d'autorité mais ils sont moins présents que le personnel infirmier.
[[Catégorie:EHPAD_AK]]
jd550pe975qbrxlj3tzfo9sveg3d0up
Mathc matrices/0en
0
84258
770103
2026-07-31T17:22:30Z
Xhungab
23827
news
770103
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/a07| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00g.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00g.c */
/* ------------------------------------ */
#include "v_a.h"
/* ------------------------------------ */
/* ------------------------------------ */
double **X_c_r_c_mR(
double **A,
int RA,
double **B,
int CB
)
{
int rc;
for(rc=RC1; rc<A[R_SIZE][C0]; rc++)
B[rc][CB] = A[RA][rc];
return(B);
}
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r),99);
double **B = i_mR(r,r);
clrscrn();
printf(" A:");
p_mR(A, S5,P0,C10);
printf(" B: Copy the row R1 of A into the column C3 of B");
c_r_c_mR(A,R1,B,C3);
p_mR(B, S5,P0,C10);
f_mR(A);
f_mR(B);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
/* int i; */
do
{
/* i = rp_I(R3)+R1; */
fun(R4);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
Copier '''une ligne''' de la matrice A dans '''une colonne''' de la matrice B :
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
A:
-1 +3 -47 -48
-19 -99 -93 -56
-83 -3 -91 -83
-11 -93 -35 +50
B: Copy the row R1 of A into the column C3 of B
+0 +0 -1 +0
+0 +0 +3 +0
+0 +0 -47 +0
+0 +0 -48 +0
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
qfh2967gcjeq73wxvcaz5vmwsabj4qa
Mathc matrices/0eo
0
84259
770105
2026-07-31T17:32:37Z
Xhungab
23827
news
770105
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00k.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00k.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fadot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r ),9);
double **Q = ar_Q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(Q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(Q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(Q,C3, i_mR(r,C1),C1);
clrscrn();
printf(" Q: An orthonormal matrix with : <u.v> = v^t A^t A u ");
p_mR(Q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" <u,v> = %+.5f \n", adot_R(A,u,v));
printf(" <u,w> = %+.5f \n", adot_R(A,u,w));
printf(" <v,w> = %+.5f \n\n", adot_R(A,u,w));
printf(" ||u|| = %+.5f \n", anorm_R(A,u));
printf(" ||v|| = %+.5f \n", anorm_R(A,v));
printf(" ||w|| = %+.5f \n", anorm_R(A,w));
f_mR(A);
f_mR(Q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
Q: An orthonormal matrix with : <u.v> = v^t A^t A u
+0.07640 -0.01942 +0.11785
+0.01528 -0.08788 +0.09779
+0.01528 -0.02488 -0.11527
u:
+0.07640
+0.01528
+0.01528
v:
-0.01942
-0.08788
-0.02488
w:
+0.11785
+0.09779
-0.11527
Press return to continue.
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u|| = +1.00000
||v|| = +1.00000
||w|| = +1.00000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
g843a1g8q5hy61tgjbv7hcn31rwppay
770111
770105
2026-07-31T18:26:41Z
Xhungab
23827
770111
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00k.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00k.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fadot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r ),9);
double **Q = ar_Q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(Q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(Q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(Q,C3, i_mR(r,C1),C1);
clrscrn();
printf(" Q: An orthonormal matrix with : <u.v> = v^t A^t A u ");
p_mR(Q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" <u,v> = %+.5f \n", adot_R(A,u,v));
printf(" <u,w> = %+.5f \n", adot_R(A,u,w));
printf(" <v,w> = %+.5f \n\n", adot_R(A,v,w));
printf(" ||u|| = %+.5f \n", anorm_R(A,u));
printf(" ||v|| = %+.5f \n", anorm_R(A,v));
printf(" ||w|| = %+.5f \n", anorm_R(A,w));
f_mR(A);
f_mR(Q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
Q: An orthonormal matrix with : <u.v> = v^t A^t A u
+0.07640 -0.01942 +0.11785
+0.01528 -0.08788 +0.09779
+0.01528 -0.02488 -0.11527
u:
+0.07640
+0.01528
+0.01528
v:
-0.01942
-0.08788
-0.02488
w:
+0.11785
+0.09779
-0.11527
Press return to continue.
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u|| = +1.00000
||v|| = +1.00000
||w|| = +1.00000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
42rqxpswanbcdypq0izlml886i97uii
Mathc matrices/0ep
0
84260
770107
2026-07-31T18:15:15Z
Xhungab
23827
news
770107
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00k.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00k.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r ),9);
double **Q = Wr_Q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(Q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(Q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(Q,C3, i_mR(r,C1),C1);
clrscrn();
printf(" Q: An orthonormal matrix with : <u.v> = v^t A u ");
p_mR(Q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" <u,v> = %+.5f \n", Wdot_R(A,u,v));
printf(" <u,w> = %+.5f \n", Wdot_R(A,u,w));
printf(" <v,w> = %+.5f \n\n", Wdot_R(A,u,w));
printf(" ||u|| = %+.5f \n", Wnorm_R(A,u));
printf(" ||v|| = %+.5f \n", Wnorm_R(A,v));
printf(" ||w|| = %+.5f \n", Wnorm_R(A,w));
f_mR(A);
f_mR(Q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
Q: An orthonormal matrix with : <u.v> = v^t A u
+0.04758 -0.04331 -0.08140
+0.05710 +0.00370 +0.11240
+0.02855 +0.07679 -0.04898
u:
+0.04758
+0.05710
+0.02855
v:
-0.04331
+0.00370
+0.07679
w:
-0.08140
+0.11240
-0.04898
Press return to continue.
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u|| = +1.00000
||v|| = +1.00000
||w|| = +1.00000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
9xdkdjwgh436or8paf1wcvyobr42ken
770113
770107
2026-07-31T18:27:53Z
Xhungab
23827
770113
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00m.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00m.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r ),9);
double **Q = Wr_Q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(Q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(Q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(Q,C3, i_mR(r,C1),C1);
clrscrn();
printf(" Q: An orthonormal matrix with : <u.v> = v^t A u ");
p_mR(Q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" <u,v> = %+.5f \n", Wdot_R(A,u,v));
printf(" <u,w> = %+.5f \n", Wdot_R(A,u,w));
printf(" <v,w> = %+.5f \n\n", Wdot_R(A,v,w));
printf(" ||u|| = %+.5f \n", Wnorm_R(A,u));
printf(" ||v|| = %+.5f \n", Wnorm_R(A,v));
printf(" ||w|| = %+.5f \n", Wnorm_R(A,w));
f_mR(A);
f_mR(Q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
Q: An orthonormal matrix with : <u.v> = v^t A u
+0.04758 -0.04331 -0.08140
+0.05710 +0.00370 +0.11240
+0.02855 +0.07679 -0.04898
u:
+0.04758
+0.05710
+0.02855
v:
-0.04331
+0.00370
+0.07679
w:
-0.08140
+0.11240
-0.04898
Press return to continue.
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u|| = +1.00000
||v|| = +1.00000
||w|| = +1.00000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
jq8cbdxf246c8tvnx1919vjh5iliccj
Mathc matrices/0eq
0
84261
770109
2026-07-31T18:25:00Z
Xhungab
23827
news
770109
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00m.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00m.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r ),9.);
double **Q = wr_Q_mR(D, i_mR(r,r ),9);
double **u = c_c_mR(Q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(Q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(Q,C3, i_mR(r,C1),C1);
clrscrn();
printf(" Q: An orthonormal matrix with : <u.v> = v^t D u ");
p_mR(Q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" <u,v> = %+.5f \n", wdot_R(D,u,v));
printf(" <u,w> = %+.5f \n", wdot_R(D,u,w));
printf(" <v,w> = %+.5f \n\n", wdot_R(D,v,w));
printf(" ||u|| = %+.5f \n", wnorm_R(D,u));
printf(" ||v|| = %+.5f \n", wnorm_R(D,v));
printf(" ||w|| = %+.5f \n", wnorm_R(D,w));
f_mR(D);
f_mR(Q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
Q: An orthonormal matrix with : <u.v> = v^t D u
+0.15617 +0.24108 +0.24566
-0.15617 -0.15437 +0.25078
-0.26029 +0.20513 -0.03583
u:
+0.15617
-0.15617
-0.26029
v:
+0.24108
-0.15437
+0.20513
w:
+0.24566
+0.25078
-0.03583
Press return to continue.
<u,v> = +0.00000
<u,w> = +0.00000
<v,w> = +0.00000
||u|| = +1.00000
||v|| = +1.00000
||w|| = +1.00000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
okh1bde4piy4e18srm0809jwy758umg
Mathc matrices/0er
0
84262
770116
2026-07-31T21:19:26Z
Xhungab
23827
news
770116
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00n.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00n.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r ),9);
double **q = wr_q_mR(D, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t D u ");
p_mR(q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", wdot_R(D,u,v));
printf(" <u,w> = %+.5f \n", wdot_R(D,u,w));
printf(" <v,w> = %+.5f\n\n\n", wdot_R(D,v,w));
printf(" ||u||^2 + ||v||^2 = %.0f \n\n",
pow(wnorm_R(D,u),2)
+ pow(wnorm_R(D,v),2) );
printf(" ||u + v||^2 = %.0f \n\n",
pow(wnorm_R(D,uplsv),2) );
f_mR(D);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t D u
-6.00000 +4.59924 +0.37947
+1.00000 -7.43321 +1.72488
+7.00000 +2.96756 +0.19713
u:
-6.00000
+1.00000
+7.00000
v:
+4.59924
-7.43321
+2.96756
w:
+0.37947
+1.72488
+0.19713
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = +0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2 = 747
||u + v||^2 = 747
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
bmzvxjavsx7t1h4c0j5kr7gpxz53r4n
770119
770116
2026-07-31T21:36:33Z
Xhungab
23827
770119
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00n.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00n.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r ),9);
double **q = wr_q_mR(D, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t D u ");
p_mR(q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", wdot_R(D,u,v));
printf(" <u,w> = %+.5f \n", wdot_R(D,u,w));
printf(" <v,w> = %+.5f\n\n\n", wdot_R(D,v,w));
printf(" ||u||^2 + ||v||^2 = %.0f \n\n",
pow(wnorm_R(D,u),2)
+ pow(wnorm_R(D,v),2) );
printf(" ||u + v||^2 = %.0f \n\n",
pow(wnorm_R(D,uplsv),2) );
f_mR(D);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
f_mR(uplsv);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t D u
-6.00000 +4.59924 +0.37947
+1.00000 -7.43321 +1.72488
+7.00000 +2.96756 +0.19713
u:
-6.00000
+1.00000
+7.00000
v:
+4.59924
-7.43321
+2.96756
w:
+0.37947
+1.72488
+0.19713
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = +0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2 = 747
||u + v||^2 = 747
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
7ofq5ov1pks8q2gb79afmrnu6p9ztfa
Mathc matrices/0es
0
84263
770118
2026-07-31T21:34:16Z
Xhungab
23827
news
770118
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00o.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00o.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r),9);
double **q = wr_q_mR(D, i_mR(r,r),9);
double **ID = wmul_mR(D,q,q, i_mR(r,r) );
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t D u ");
p_mR(q, S3,P5,C6);
printf(" ID : wmul_mR(D,q,q,ID);");
p_mR(ID,S9,P3, C6);
f_mR(D);
f_mR(q);
f_mR(ID);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t D u
-3.00000 +5.70652 +0.10588 +0.73876
-2.00000 -1.19565 +2.14924 -0.49025
-7.00000 -7.68478 -0.88926 +7.06903
-8.00000 -2.78261 -2.16782 -3.51079
ID : wmul_mR(D,q,q,ID);
+276.000 +0.000 +0.000 +0.000
+0.000 +315.359 +0.000 -0.000
+0.000 -0.000 +51.841 -0.000
+0.000 -0.000 -0.000 +80.606
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
m02gj47b3619668chgqvr0gksaaegs5
Mathc matrices/0eu
0
84264
770121
2026-08-01T08:24:25Z
Xhungab
23827
news
770121
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00n.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00n.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r ),9);
double **q = Wr_q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t D u ");
p_mR(q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", Wdot_R(A,u,v));
printf(" <u,w> = %+.5f \n", Wdot_R(A,u,w));
printf(" <v,w> = %+.5f\n\n\n", Wdot_R(A,v,w));
printf(" ||u||^2 + ||v||^2 = %.0f \n\n",
pow(Wnorm_R(A,u),2)
+ pow(Wnorm_R(A,v),2) );
printf(" ||u + v||^2 = %.0f \n\n",
pow(Wnorm_R(A,uplsv),2) );
f_mR(A);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t D u
-2.00000 +6.46520 -2.75657
+3.00000 +0.80219 +1.72034
+3.00000 -3.19781 -0.74080
u:
-2.00000
+3.00000
+3.00000
v:
+6.46520
+0.80219
-3.19781
w:
-2.75657
+1.72034
-0.74080
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2 = 5298
||u + v||^2 = 5298
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
0yeaql4dyecvor80mvtxxwtzw824e1p
770124
770121
2026-08-01T08:34:59Z
Xhungab
23827
770124
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00n.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00n.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r ),9);
double **q = Wr_q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A u ");
p_mR(q, S3,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", Wdot_R(A,u,v));
printf(" <u,w> = %+.5f \n", Wdot_R(A,u,w));
printf(" <v,w> = %+.5f\n\n\n", Wdot_R(A,v,w));
printf(" ||u||^2 + ||v||^2 = %.0f \n\n",
pow(Wnorm_R(A,u),2)
+ pow(Wnorm_R(A,v),2) );
printf(" ||u + v||^2 = %.0f \n\n",
pow(Wnorm_R(A,uplsv),2) );
f_mR(A);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A u
-2.00000 +6.46520 -2.75657
+3.00000 +0.80219 +1.72034
+3.00000 -3.19781 -0.74080
u:
-2.00000
+3.00000
+3.00000
v:
+6.46520
+0.80219
-3.19781
w:
-2.75657
+1.72034
-0.74080
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2 = 5298
||u + v||^2 = 5298
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
ldswqujxe04melgdoh9n7j61o84a2wd
Mathc matrices/0et
0
84265
770122
2026-08-01T08:26:45Z
Xhungab
23827
news
770122
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00o.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00o.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r),9);
double **q = Wr_q_mR(A, i_mR(r,r),9);
double **ID = Wmul_mR(A,q,q, i_mR(r,r) );
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A u ");
p_mR(q, S3,P5,C6);
printf(" ID : Wmul_mR(A,q,q,ID);");
p_mR(ID,S9,P3, C6);
f_mR(A);
f_mR(q);
f_mR(ID);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A u
+7.00000 +19.70035 -2.98037
-5.00000 -7.78596 +2.02337
-6.00000 -2.74316 +0.06731
ID : Wmul_mR(A,q,q,ID);
+2009.000 +0.000 +0.000
-0.000 +1546.319 -0.000
+0.000 +0.000 +25.555
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
mfzi25xv204cr44fy79cywm7j1qyukx
Mathc matrices/0ew
0
84266
770126
2026-08-01T08:43:12Z
Xhungab
23827
news
770126
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00n.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00n.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fadot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r ),9);
double **q = ar_q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A^t A u ");
p_mR(q, S10,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", adot_R(A,u,v));
printf(" <u,w> = %+.5f \n", adot_R(A,u,w));
printf(" <v,w> = %+.5f\n\n\n", adot_R(A,v,w));
printf(" ||u||^2 + ||v||^2 = %.0f \n\n",
pow(anorm_R(A,u),2)
+ pow(anorm_R(A,v),2) );
printf(" ||u + v||^2 = %.0f \n\n",
pow(anorm_R(A,uplsv),2) );
f_mR(A);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A^t A u
-7.00000 -5.69290 -2.31286
+7.00000 -5.30710 -0.37667
-1.00000 +0.90101 -2.58659
u:
-7.00000
+7.00000
-1.00000
v:
-5.69290
-5.30710
+0.90101
w:
-2.31286
-0.37667
-2.58659
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = +0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2 = 21292
||u + v||^2 = 21292
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
r7z17z2o402c2wbit9bin51i1lkl59o
Mathc matrices/0ev
0
84267
770127
2026-08-01T08:45:32Z
Xhungab
23827
news
770127
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00o.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00o.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fadot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r),9);
double **q = ar_q_mR(A, i_mR(r,r),9);
double **ID = amul_mR(A,q,q, i_mR(r,r) );
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A^t A u ");
p_mR(q, S10,P5,C6);
printf(" ID : amul_mR(A,q,q,ID);");
p_mR(ID,S10,P3, C6);
f_mR(A);
f_mR(q);
f_mR(ID);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A^t A u
+2.00000 -0.06056 +7.38046 -14.12392
+7.00000 +2.28803 -5.73747 +1.73430
+5.00000 -2.65141 +2.02022 +1.45766
+5.00000 +4.34859 -4.77319 +14.03780
ID : amul_mR(A,q,q,ID);
+11558.000 +0.000 +0.000 -0.000
+0.000 +3379.901 +0.000 +0.000
+0.000 -0.000 +2699.559 -0.000
+0.000 +0.000 -0.000 +15408.151
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
ir2bjytz04jj0jseawhwbvx6rckbuie
Mathc matrices/0ex
0
84268
770132
2026-08-01T09:30:19Z
Xhungab
23827
news
770132
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0d5| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00p.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00p.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fadot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = r_mR( i_mR(r,r ),9);
double **q = ar_q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
double **uplsvplsw = add_mR(uplsv,w, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A^t A u ");
p_mR(q, S10,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", adot_R(A,u,v));
printf(" <u,w> = %+.5f \n", adot_R(A,u,w));
printf(" <v,w> = %+.5f\n\n\n", adot_R(A,v,w));
printf(" ||u||^2 + ||v||^2+ ||w||^2 = %.0f \n\n",
pow(anorm_R(A,u),2)
+ pow(anorm_R(A,v),2)
+ pow(anorm_R(A,w),2) );
printf(" ||u + v + w||^2 = %.0f \n\n",
pow(anorm_R(A,uplsvplsw),2) );
f_mR(A);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
f_mR(uplsv);
f_mR(uplsvplsw);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A^t A u
+4.00000 -3.86469 -2.61291
+6.00000 -1.79703 -3.52574
-3.00000 -4.60148 -5.09086
u:
+4.00000
+6.00000
-3.00000
v:
-3.86469
-1.79703
-4.60148
w:
-2.61291
-3.52574
-5.09086
Press return to continue.
Orthogonal vectors with
<u,v> = -0.00000
<u,w> = -0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2+ ||w||^2 = 9247
||u + v + w||^2 = 9247
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
loikkbligard4yx8q7h1kbrdr012pol
Utilisateur:Goelette Cardabela/Ehpad AK/Mon théâtre du matin
2
84269
770133
2026-08-01T09:32:46Z
Goelette Cardabela
9378
[[WL:RD]] : Initialisation de la page
770133
wikitext
text/x-wiki
== Mon théâtre du matin ==
[[Catégorie:EHPAD_AK]]
s3pwj10t46aveyy8muk89rpfi5az5q8
770141
770133
2026-08-01T09:51:35Z
Goelette Cardabela
9378
/* Mon théâtre du matin */ [[WL:RD]] : + informations
770141
wikitext
text/x-wiki
== Mon théâtre du matin ==
Si le temps est au beau et chaud des martinets (ou des hirondelles ?) sillonnent le ciel pour se nourrir.
<ref> :Le martinet noir est entièrement sombre et ne se pose jamais sur les fils, tandis que l' hirondelle a un ventre clair et se pose souvent. Bien qu'ils se ressemblent en vol, ils appartiennent à des familles différentes.</ref>
[[Catégorie:EHPAD_AK]]
cxqydxk01y73oxvn0ble2ypszlqj40i
Mathc matrices/0ey
0
84270
770137
2026-08-01T09:38:00Z
Xhungab
23827
news
770137
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00p.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00p.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r ),9);
double **q = Wr_q_mR(A, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
double **uplsvplsw = add_mR(uplsv,w, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t A u ");
p_mR(q, S10,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", Wdot_R(A,u,v));
printf(" <u,w> = %+.5f \n", Wdot_R(A,u,w));
printf(" <v,w> = %+.5f\n\n\n", Wdot_R(A,v,w));
printf(" ||u||^2 + ||v||^2+ ||w||^2 = %.0f \n\n",
pow(Wnorm_R(A,u),2)
+ pow(Wnorm_R(A,v),2)
+ pow(Wnorm_R(A,w),2) );
printf(" ||u + v + w||^2 = %.0f \n\n",
pow(Wnorm_R(A,uplsvplsw),2) );
f_mR(A);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
f_mR(uplsv);
f_mR(uplsvplsw);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t A u
+7.00000 -2.16387 +4.78959
+3.00000 +8.35834 +3.85101
+9.00000 -2.92497 -8.30040
u:
+7.00000
+3.00000
+9.00000
v:
-2.16387
+8.35834
-2.92497
w:
+4.78959
+3.85101
-8.30040
Press return to continue.
Orthogonal vectors with
<u,v> = -0.00000
<u,w> = +0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2+ ||w||^2 = 41849
||u + v + w||^2 = 41849
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
d8y3bdrmg9ic7k6lced9eaktrrdc3l6
Mathc matrices/0ez
0
84271
770140
2026-08-01T09:45:44Z
Xhungab
23827
news
770140
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier| c00p.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00p.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r ),9);
double **q = wr_q_mR(D, i_mR(r,r ),9);
double **u = c_c_mR(q,C1, i_mR(r,C1),C1);
double **v = c_c_mR(q,C2, i_mR(r,C1),C1);
double **w = c_c_mR(q,C3, i_mR(r,C1),C1);
double **uplsv = add_mR(u,v, i_mR(r,C1));
double **uplsvplsw = add_mR(uplsv,w, i_mR(r,C1));
clrscrn();
printf(" q: An orthogonal matrix with : <u.v> = v^t D u ");
p_mR(q, S10,P5,C6);
printf(" u: ");
p_mR(u,S9,P5, C6);
printf(" v: ");
p_mR(v,S9,P5, C6);
printf(" w: ");
p_mR(w,S9,P5, C6);
stop();
clrscrn();
printf(" Orthogonal vectors with \n\n");
printf(" <u,v> = %+.5f \n", wdot_R(D,u,v));
printf(" <u,w> = %+.5f \n", wdot_R(D,u,w));
printf(" <v,w> = %+.5f\n\n\n", wdot_R(D,v,w));
printf(" ||u||^2 + ||v||^2+ ||w||^2 = %.0f \n\n",
pow(wnorm_R(D,u),2)
+ pow(wnorm_R(D,v),2)
+ pow(wnorm_R(D,w),2) );
printf(" ||u + v + w||^2 = %.0f \n\n",
pow(wnorm_R(D,uplsvplsw),2) );
f_mR(D);
f_mR(q);
f_mR(u);
f_mR(v);
f_mR(w);
f_mR(uplsv);
f_mR(uplsvplsw);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(R3);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
q: An orthogonal matrix with : <u.v> = v^t D u
-7.00000 -3.31415 +1.91150
+6.00000 -5.73072 -10.19469
-9.00000 +2.59609 -5.09735
u:
-7.00000
+6.00000
-9.00000
v:
-3.31415
-5.73072
+2.59609
w:
+1.91150
-10.19469
-5.09735
Press return to continue.
Orthogonal vectors with
<u,v> = +0.00000
<u,w> = +0.00000
<v,w> = -0.00000
||u||^2 + ||v||^2+ ||w||^2 = 1423
||u + v + w||^2 = 1423
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
4imzrpe9zim7yzeroto9aqux2f9o33t
Mathc matrices/0f0
0
84272
770151
2026-08-01T11:41:16Z
Xhungab
23827
news
770151
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0b7| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00i.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00i.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fwdot.h"
/* ------------------------------------ */
void fun(int r)
{
double **D = rpdiag_mR( i_mR(r,r),9.);
double **U = r_mR( i_mR(r,r),9.);
double **Q = i_mR(r,r);
double **R = i_mR(r,r);
clrscrn();
printf(" D : d_i > 0");
p_mR(D,S3,P3, C8);
printf(" U :");
p_mR(U,S3,P3, C6);
stop();
clrscrn();
wQR_mR(D,U,Q,R);
printf(" Q :");
p_mR(Q,S3,P5, C6);
printf(" R :");
p_mR(R,S10,P5, C6);
stop();
clrscrn();
printf(" U :");
p_mR(U,S3,P3, C6);
printf(" U = Q * R :");
mul_mR(Q,R, U);
p_mR(U,S3,P3, C6);
f_mR(D);
f_mR(U);
f_mR(Q);
f_mR(R);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
D : d_i > 0
+4.000 +0.000 +0.000
+0.000 +8.000 +0.000
+0.000 +0.000 +6.000
U :
-7.000 -3.000 -3.000
-4.000 -4.000 -8.000
-2.000 -5.000 +2.000
Press return to continue.
Q :
-0.37524 +0.24541 +0.22129
-0.21442 -0.08675 -0.26739
-0.10721 -0.34129 +0.19670
R :
+18.65476 +14.58073 +16.93938
+0.00000 +10.06987 -1.48845
-0.00000 +0.00000 +16.81791
Press return to continue.
U :
-7.000 -3.000 -3.000
-4.000 -4.000 -8.000
-2.000 -5.000 +2.000
U = Q * R :
-7.000 -3.000 -3.000
-4.000 -4.000 -8.000
-2.000 -5.000 +2.000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
h3459dvxkl4lvmi10mafq5futks71co
Mathc matrices/0f1
0
84273
770154
2026-08-01T11:52:31Z
Xhungab
23827
news
770154
wikitext
text/x-wiki
[[Catégorie:Mathc matrices (livre)]]
[[Mathc matrices/0c0| '''Application''']]
Installer et compiler ces fichiers dans votre répertoire de travail.
{{Fichier|c00i.c|largeur=70%|info=|icon=Crystal128-source-c.svg}}
<syntaxhighlight lang="c">
/* ------------------------------------ */
/* Save as : c00i.c */
/* ------------------------------------ */
#include "v_a.h"
#include "fw2dot.h"
/* ------------------------------------ */
void fun(int r)
{
double **A = rdefinite_positive_mR( i_mR(r,r),9.);
double **U = r_mR( i_mR(r,r),9.);
double **Q = i_mR(r,r);
double **R = i_mR(r,r);
clrscrn();
printf(" A :");
p_mR(A,S5,P0, C8);
printf(" U :");
p_mR(U,S3,P0, C6);
stop();
clrscrn();
WQR_mR(A,U,Q,R);
printf(" Q :");
p_mR(Q,S3,P5, C6);
printf(" R :");
p_mR(R,S10,P5, C6);
stop();
clrscrn();
printf(" U :");
p_mR(U,S3,P3, C6);
printf(" U = Q * R :");
mul_mR(Q,R, U);
p_mR(U,S3,P3, C6);
f_mR(A);
f_mR(U);
f_mR(Q);
f_mR(R);
}
/* ------------------------------------ */
int main(void)
{
time_t t;
srand(time(&t));
do
{
fun(rp_I(R3)+R2);
} while(stop_w());
return 0;
}
/* ------------------------------------ */
/* ------------------------------------ */
</syntaxhighlight>
'''Exemple de sortie écran :'''
<syntaxhighlight lang="c">
A :
+158 +137 +35 -55
+137 +179 -16 -117
+35 -16 +99 +68
-55 -117 +68 +182
U :
+6 +4 +6 +4
-5 +3 +4 +9
-6 -1 -8 +7
-8 -4 +3 -3
Press return to continue.
Q :
+0.04725 -0.00652 +0.05254 +0.16941
-0.03938 +0.08564 +0.01798 -0.16350
-0.04725 +0.04452 -0.12702 -0.03117
-0.06300 +0.02558 +0.09376 -0.02911
R :
+126.97638 +95.55321 +68.91833 +74.76981
-0.00000 +78.96572 +65.72007 +177.75441
+0.00000 +0.00000 +60.37496 -24.87857
+0.00000 +0.00000 -0.00000 +17.31767
Press return to continue.
U :
+6.000 +4.000 +6.000 +4.000
-5.000 +3.000 +4.000 +9.000
-6.000 -1.000 -8.000 +7.000
-8.000 -4.000 +3.000 -3.000
U = Q * R :
+6.000 +4.000 +6.000 +4.000
-5.000 +3.000 +4.000 +9.000
-6.000 -1.000 -8.000 +7.000
-8.000 -4.000 +3.000 -3.000
Press return to continue
Press X return to stop
</syntaxhighlight>
{{AutoCat}}
18ovh7dxth2udixr1nlbqtko8uzkjac