Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Thread Subject:
Alternative to inv function

Subject: Alternative to inv function

From: Cesar

Date: 27 Aug, 2009 20:57:02

Message: 1 of 3

I am writing a Finite Element program that needs to solve the typical [K]{f}={d} system. Of course I know that we SHOULD NOT use inv to solve the system of equations, but my problem has unique characteristics. The FE program is for plates on an elastic foundation. What is unique about this problem is that you can explicitly define the stiffness matrix for the plates, but the foundation has historically been modeled using the Boussinesq model. Unfortunately the Boussinesq model gives the flexibility matrix not the stiffness. For this reason, what I have been doing is compute the stiffness of the plates using traditional FEM techniques and then compute the flexibility of the foundation and then use “inv” to calculate the stiffness and then add it to the stiffness of the plates. Then my system is,
[Kp+inv(Sf)]{f}={d}
Which I then solve with “\”.

My question is, is there a way to avoid using the “inv” function?

Subject: Alternative to inv function

From: Miroslav Balda

Date: 27 Aug, 2009 21:30:04

Message: 2 of 3

"Cesar " <cesar.carrasco@att.net> wrote in message <h76ruu$ntb$1@fred.mathworks.com>...
SNIP
> Then my system is,
> [Kp+inv(Sf)]{f}={d}
> Which I then solve with “\”.
>
> My question is, is there a way to avoid using the “inv” function?

Hi Cesar,
What about to solve a system
Sf*[Kp+inv(Sf)]*f = Sf*d
with a solution
f = [Sf*Kp+I]\Sf*d
Maybe it is better than the original system with inversion.
Mira

Subject: Alternative to inv function

From: Cesar

Date: 2 Sep, 2009 19:36:04

Message: 3 of 3

"Miroslav Balda" <miroslav.nospam@balda.cz> wrote in message <h76tss$5kh$1@fred.mathworks.com>...
> "Cesar " <cesar.carrasco@att.net> wrote in message <h76ruu$ntb$1@fred.mathworks.com>...
> SNIP
> > Then my system is,
> > [Kp+inv(Sf)]{f}={d}
> > Which I then solve with “\”.
> >
> > My question is, is there a way to avoid using the “inv” function?
>
> Hi Cesar,
> What about to solve a system
> Sf*[Kp+inv(Sf)]*f = Sf*d
> with a solution
> f = [Sf*Kp+I]\Sf*d
> Maybe it is better than the original system with inversion.
> Mira

Thanks Mira,
Your solution worked perfectly.
I just had to tweak it a little bit because of the way boundary conditions are applied.
Cesar

Tags for this Thread

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Contact us