Date: Dec 1, 2012 1:12 PM
Subject: Problem solving nonlinear equations with matrices
I am working with the Finite Element Method using MATLAB and I have run into a technical problem. For the basic finite element procedure, a stiffness matrix K and a force vector F are created, and the results we want to find are solved using
where K and F have no variables, only numbers. Now, however, I am doing a vibration problem and need some help to put a nonlinear equation into the matrix, or to solve it simultaneously.
Here's my problem:
I have a square matrix K of only numbers and my force vector F is zeros. I cannot just solve
because it gives me the trivial zero solution. I have to insert an equation based on a diagonal matrix M such that
M_i*d(i)^2=1 (sum on i from 1 to the size of the K matrix)
or M11*d1^2 + M22*d2^2 + ... + Mnn*dn^2 = 1
where n is the number of rows/columns in K.
My procedure is to remove one equation (or row) from the K matrix, leaving n-1 equations, and to solve these equations with the M_i*d(i)^2=1 equation to give me a nonzero d solution. My problem is...how? I am new to MATLAB and have no clue how to do this. I've tried using fsolve but keep getting various error messages.