Hi Antoine,

Thanks for the comments; In attachment the results of the calculations (note 
that the modal effective depends on the eigenvectors)

The calculation for the difference calculations are described herebellow ..


Paul

###################################################################################"
// prog principal
nbre = 10;
for k = 1 : nbre
    printf("\n*******\nIteration num %d\n",k);
    s1 = "  ...
    [u" + string(k) + ",v" + string(k) + ",K" + string(k) + ",M" + string(k) + 
"] = calcul_v() , ...
    [nl,nc] = size(v" + string(k) + ") , ...
    save(''u" + string(k) + ".bin'',''u" + string(k) + "'') , ...
    save(''v" + string(k) + ".bin'',''v" + string(k) + "'') , ...
    clear nl , ...
    clear nc , ...
    save(''K" + string(k) + ".bin'',''K" + string(k) + "'') , ...
    save(''M" + string(k) + ".bin'',''M" + string(k) + "'') , ...
    ";
    execstr(s1) ;
  
end

printf("\n\n");

// difference v1 - v2
for k = 2 : nbre
    s2 = " ...
    printf(""(eigenvalues) Max delta u%d - u1 = %g\n"",k,abs(max(u" + string(k) 
+ " - u1))) , ...
    printf(""(eigenvectors) Max delta v%d - v1 = %g\n"",k,abs(max(v" + 
string(k) + " - v1))) , ...
    printf(""(input matrix) Max delta K%d - K1 = %g\n"",k,abs(max(K" + 
string(k) + " - K1))) , ...
    printf(""(input matrix) Max delta M%d - M1 = %g\n"",k,abs(max(M" + 
string(k) + " - M1))) , ...
    ";
    execstr(s2) ;
    printf("\n");
end
######################################################################################"


















-----Message d'origine-----
De : users [mailto:[email protected]] De la part de Antoine 
Monmayrant Envoyé : vendredi 26 juin 2015 10:50 À : International users mailing 
list for Scilab.
Objet : Re: [Scilab-users] eigs calculation

Hi Paul,

I don't really like a function that gives different answers for the very same 
input.
That sounds like a bug to me.
That being said, from the data you showed, it is not clear that your 
eigenvector are really different.
If what you show is just a difference in the norm of the difference between the 
eigenvalue at iteration 1 and N, that might be OK.
Indeed, if v is an eigenvector, a.v with a non zero-scalar, is also an 
eigenvector.
You should check whether v1 and vN are colinear: if they are, the results are 
not really different, they just differ by a scaling factor.
But I would still call it a bug, as a function should always give the same 
answer when given the same input parameters.

Cheers,

Antoine

 
Le Jeudi 25 Juin 2015 17:17 CEST, "Carrico, Paul" <[email protected]> 
a écrit: 
 
> Dear all
> 
> I'm still working on my "eigs" issue topic and I'm still trying to 
> understand what's going wrong;
> 
> I run a test case :
> - same function is launched 10 times
> - each time the input data are recorded (K,M)
> - for each loop the eigenvalues u and the eigenvectors v are recorded
> 
> Then the values of each loop are compared with the values of the loop
> 1
> 
> If K,M,u remains strictly identical, it is not the case for u (the 
> eigenvectors) ... why ?
> 
> I've ever check any initialization issue, but everything seems to be 
> ok
> 
> Paul
> 
> PS : the results of this case
> 
> Max delta v2 - v1 = 453.857
> Max delta K2 - K1 = 0
> Max delta M2 - M1 = 0
> 
> Max delta v3 - v1 = 549.214
> Max delta K3 - K1 = 0
> Max delta M3 - M1 = 0
> 
> Max delta v4 - v1 = 585.95
> Max delta K4 - K1 = 0
> Max delta M4 - M1 = 0
> 
> Max delta v5 - v1 = 379.702
> Max delta K5 - K1 = 0
> Max delta M5 - M1 = 0
> 
> Max delta v6 - v1 = 489.844
> Max delta K6 - K1 = 0
> Max delta M6 - M1 = 0
> 
> Max delta v7 - v1 = 439.221
> Max delta K7 - K1 = 0
> Max delta M7 - M1 = 0
> 
> Max delta v8 - v1 = 432.406
> Max delta K8 - K1 = 0
> Max delta M8 - M1 = 0
> 
> Max delta v9 - v1 = 351.752
> Max delta K9 - K1 = 0
> Max delta M9 - M1 = 0
> 
> Max delta v10 - v1 = 554.515
> Max delta K10 - K1 = 0
> Max delta M10 - M1 = 0
> 
> -----Message d'origine-----
> De : Carrico, Paul
> Envoyé : mercredi 17 juin 2015 22:18
> À : International users mailing list for Scilab.
> Objet : RE: [Scilab-users] eigs calculation
> 
> Dear All
> 
> Thanks for the answers.
> 
> To give more information's on what I'm doing (That's quite new I confess), 
> I'm performing  a (basic) finite element calculation with beams using sparse 
> matrix (stiffness matrix K and mass matrix M).
> [u,v] =
> eigs(K((ddl_elem+1):$,(ddl_elem+1):$),M((ddl_elem+1):$,(ddl_elem+1):$)
> ,n,"SM");
> 
> Nota: ddl means dof
> 
> I'm calculated first the natural frequencies using (K - omega^2.M).x=0 ... 
> the pulse (or circular frequencies)  are no more and no less than the 
> eigenvalues of the above system (u = omega^2).
> 
> Just a "mechanical" remark: since the beam is clamped in one side (and free 
> on the tip),  it is absolutely normal that you find twice the same natural 
> frequency (1rst mode in one direction, the second one in a new direction at 
> 90°) .... I've been really surprised to find it, but happy at the same time 
> ...
> 
> The origin of my question was: since it obvious that the results are strongly 
> sensitive to the "units" (i.e. the numbers), I'm wondering if there is a way 
> to control the accuracy of the eigenvalues calculation using eigs keywords 
> ... 
> 
> In any way, thanks for the debate
> 
> Paul
> 
> EXPORT CONTROL : 
> Cet email ne contient pas de données techniques This email does not 
> contain technical data _______________________________________________
> users mailing list
> [email protected]
> https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.scilab.org_m
> ailman_listinfo_users&d=AwIGaQ&c=0hKVUfnuoBozYN8UvxPA-w&r=4TCz--8bXfJh
> ZZvIxJAemAJyz7Vfx78XvgYu3LN7eLo&m=1q3UvWvNm8K7-IZGCUzIV3uKngKalGVN-2TH
> izNu_Ek&s=Qd7_9c6GV5rmRHnsvDdDgvnnodut0J24q0KOnk1zqb8&e=
> 
 
 
 
 


_______________________________________________
users mailing list
[email protected]
https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.scilab.org_mailman_listinfo_users&d=AwIGaQ&c=0hKVUfnuoBozYN8UvxPA-w&r=4TCz--8bXfJhZZvIxJAemAJyz7Vfx78XvgYu3LN7eLo&m=1q3UvWvNm8K7-IZGCUzIV3uKngKalGVN-2THizNu_Ek&s=Qd7_9c6GV5rmRHnsvDdDgvnnodut0J24q0KOnk1zqb8&e=
 

EXPORT CONTROL : 
Cet email ne contient pas de données techniques
This email does not contain technical data

Attachment: diary.dat
Description: diary.dat

_______________________________________________
users mailing list
[email protected]
http://lists.scilab.org/mailman/listinfo/users

Reply via email to