[Scilab-users] eigs calculation
tim at wescottdesign.com
tim at wescottdesign.com
Wed Jun 17 17:55:50 CEST 2015
On 2015-06-17 06:50, Carrico, Paul wrote:
> Dear All,
>
> I'm performing a (mechanical) calculation using the eigs and I've been
> noticing that the results are strongly sensitive on the unit system
> I'm using; I can understand that high numbers can lead to some
> numerical "issues" …
>
> Is there a way to increase the accuracy ?
>
> Paul
>
> PS: the 2 types of results
>
> _NB_:
>
> 1 (MPa) = 1E6 (Pa)
>
> 1 (mm) = 1E-3 (m)
>
> 1 (Kg/m^3) = 1E12 (T/mm^3)
>
> [u,v] =
> eigs(K((ddl_elem+1):$,(ddl_elem+1):$),M((ddl_elem+1):$,(ddl_elem+1):$),n,"SM");
>
>
> a) calculation 1 in Pa, m, Kg/m^3
>
> Natural frequency calculation:
>
> - Resonance 1 : 497.956 Hz
>
> - Resonance 2 : 3120.64 Hz
>
> - Resonance 3 : 5277.8 Hz
>
> - Resonance 4 : 6948.69 Hz
>
> - Resonance 5 : 8737.88 Hz
>
> - Resonance 6 : 15832.1 Hz
>
> - Resonance 7 : 17122.8 Hz
>
> - Resonance 8 : 20847.8 Hz
>
> - Resonance 9 : 26382.5 Hz
>
> - Resonance 10 : 28305.1 Hz
>
> - Resonance 11 : 34752 Hz
>
> - Resonance 12 : 36926.4 Hz
>
> b) Calculation in MPa, mm, T/mm^3 ….
>
> Natural frequency calculation:
>
> - Resonance 1 : 497.955 Hz
>
> - Resonance 2 : 497.956 Hz
>
> - Resonance 3 : 3120.59 Hz
>
> - Resonance 4 : 3120.64 Hz
>
> - Resonance 5 : 6948.69 Hz
>
> - Resonance 6 : 7463.93 Hz
>
> - Resonance 7 : 8737.56 Hz
>
> - Resonance 8 : 8737.88 Hz
>
> - Resonance 9 : 17121.6 Hz
>
> - Resonance 10 : 17122.8 Hz
>
> - Resonance 11 : 20847.8 Hz
>
> - Resonance 12 : 22390 Hz
Hi Paul:
I can't tell you about the innards of Scilab specifically, but
eigenvalue calculation in general can be very sensitive to numerical
issues. If you're entering the data by hand or otherwise truncating the
source data your entire difference in results may just be from rounding
error in your source data.
If you're starting from one set of source data and multiplying by
conversion constants, then you can try changing the tolerance (if it's
not in the function then there's a global one, called, I think, %TOL).
There are ways to make the matrices more numerically stable. I am
absolutely positively not an expert on this, but I think that the more
you can make your matrix into something with a band of non-zero numbers
around the main diagonal and zeros elsewhere, the more stable the
problem will be.
If mechanical systems are like control systems, then the numerical
stability of the matrix that describes the system dynamics is just a
reflection of the real sensitivity of the real system to manufacturing
variations -- it may be that, in a group of several physical units all
assembled to the same specification, you'll find that much variation in
the real world!
More information about the users
mailing list