Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
Drexel University or The Math Forum.
|
|
|
|
Re: Matrix inversion - linear algebra - higher accuracy for some matrix rows ? (Tikhonov regularization???)
Posted:
Sep 11, 2012 11:07 AM
|
|
"someone" <newsboost@gmail.com> wrote in message news:k2lgj3$s1a$1@dont-email.me... > Here's the deal: > > A-matrix is approx. 90x90, mostly diagonal but also quite some offdiagonal > elements here and there. > > Some rows in the matrix are equations that is harder to satisfy than > others because something is rotating at different speeds - it means that > those matrix equations (the lower rows in A) that has a physical > connection to something that rotates really fast, causes some severe > oscillations (it gives oscillating accelerations and wrong forces) because > the timestep is very high compared to the rotation speed for the last rows > in A... Got it? > > Ok, is there any way to make: x = A\b more accurate for the lower > rows/equations or ??? > > > Another possibility I've been thinking about - in order to avoid these > oscillations I talked about before - is to use regularization, maybe? I > did a project some years ago using Tikhonov regularization, but here > AFAIR - the idea was that all the elements in the solution-vector x could > not change too much... This will allow me to use higher timesteps and > avoid the oscillations... Understand it ? > > > ELABORATION FOR THOSE WHO DON'T UNDERSTAND THE PHYSICS: > Here's an elaboration of why I have a problem with high angular > velocities: If some part of the problem (top rows in A) rotates very slow, > i.e. at 1 rad/s and your timestep is 0.01 sec - it means that you have 100 > timesteps per rotation. That's ok... However, the lower rows in A rotates > much faster - then I only get maybe 5-8 timesteps per rotation. This gives > some VERY annoying oscillations and forces going in "random" directions > because the motion is not smoothly captured. > > I want my program to solve x = A\b quickly and efficent - any ideas that > might help me (and keep the computation time reasonable) ? Any tricks / > tips ? > > I really hope to hear from some clever experts here... Thanks...
You might try lscov: http://www.mathworks.com/help/techdoc/ref/lscov.html
It will allow you to weight the observations.
-- Loren http://blogs.mathworks.com/loren/ http://www.mathworks.com/matlabcentral/
|
|
|
|