Hi all,
As is known to everybody, we can obtain global stiffness matrix by command PrintA. and for mass matrix, i tried my model under a simple Transient analysis and get the equivalent global matrix. then i can cal mass matrix.
there is one thing i cant understand:
as a 2D problem, no matter how much i assign to the 3rd DOF of each node,the number of each 3rd dof in mass matrix remains 0.0
for example, command :
mass 1 a b c;
will create matrx:
a 0 0
0 b 0
0 0 0
but not
a 0 0
0 b 0
0 0 c
Something about Mass matrix
Moderators: silvia, selimgunay, Moderators
Re: Something about Mass matrix
Hi,
As I understand it, the PrintA isn't the global stiffness either the transformed K or combination of K, C and M (as stated here http://opensees.berkeley.edu/wiki/index ... tA_Command).
You said you did run a Transient Analaysis. I think you should try your analysis under a static one, see here :
" http://opensees.berkeley.edu/community/ ... tA#p105259 "
The idea would be to solve the roots of the eigen value problem. If the eigen command with fullgenLapack solver for 3 first values gives your the same as those you would expect that means the mass matrix is correct (I assume you know the K matrix). I did it for a 2DOF problems (easier to solve a quad equation than a cubic) and it worked out just fine.
Hope it helps.
Good luck
As I understand it, the PrintA isn't the global stiffness either the transformed K or combination of K, C and M (as stated here http://opensees.berkeley.edu/wiki/index ... tA_Command).
You said you did run a Transient Analaysis. I think you should try your analysis under a static one, see here :
" http://opensees.berkeley.edu/community/ ... tA#p105259 "
The idea would be to solve the roots of the eigen value problem. If the eigen command with fullgenLapack solver for 3 first values gives your the same as those you would expect that means the mass matrix is correct (I assume you know the K matrix). I did it for a 2DOF problems (easier to solve a quad equation than a cubic) and it worked out just fine.
Hope it helps.
Good luck
Re: Something about Mass matrix
your input is obviously garbage. following example assigns mass twice and outputs it 3 different ways (twice using print and the latter using printA using CentralDifference and a dt of 1.0)
model Basic -ndm 2
node 1 0. 0. -mass 1.0 2.0 3.0
print node 1
mass 1 4.0 5.0 6.0
print node 1
node 2 0. 1.
fix 2 1 1 1
geomTransf Linear 1
element elasticBeamColumn 1 1 2 100 100 100 1
integrator CentralDifference
system FullGeneral
analysis Transient
analyze 1 1.0
printA
model Basic -ndm 2
node 1 0. 0. -mass 1.0 2.0 3.0
print node 1
mass 1 4.0 5.0 6.0
print node 1
node 2 0. 1.
fix 2 1 1 1
geomTransf Linear 1
element elasticBeamColumn 1 1 2 100 100 100 1
integrator CentralDifference
system FullGeneral
analysis Transient
analyze 1 1.0
printA
Re: Something about Mass matrix
dear fmk:
i cant find out the specific global system matrix form when use CentralDifference.
why when using your paras, printA will return mass matrix? hope you kindly make some explanation.
i use Newmark method, with no Damping, and printA will return Ke= K+1/(beta*dt**2)*M. if that is right (K is known), i cal M=(Ke-K)*(beta*dt**2).
but under this situation, M matrix only have the each nodes' 1 2 dof mass value, thats what i dont understand.
i cant find out the specific global system matrix form when use CentralDifference.
why when using your paras, printA will return mass matrix? hope you kindly make some explanation.
i use Newmark method, with no Damping, and printA will return Ke= K+1/(beta*dt**2)*M. if that is right (K is known), i cal M=(Ke-K)*(beta*dt**2).
but under this situation, M matrix only have the each nodes' 1 2 dof mass value, thats what i dont understand.
Re: Something about Mass matrix
i suggest you pick up a copy of Dynamics of Structures by Prof. Chopra and have a read of Section 5.
printA returns the mass matrix when using central difference and a time step of 1.0 because if you look at the theory that is what the matrix is. "Dynamics of Structures", section 5.3: Khat = 1/(dt^2) M + 1/(2*dt) C, i.e. Khat = M.
you are screwing up somewhere:
wipe
model Basic -ndm 2
node 1 0. 0. -mass 4 5 6
node 2 0. 1.
fix 2 1 1 1
geomTransf Linear 1
element elasticBeamColumn 1 1 2 100 100 100 1
integrator LoadControl 1.0
system FullGeneral
analysis Static
analyze 1
printA -file tmp1.out
wipeAnalysis
integrator CentralDifference
system FullGeneral
analysis Transient
analyze 1 1.0
printA -file tmp2.out
integrator Newmark 0.5 0.25
analyze 1 2.0
printA -file tmp3.out
and results:
tmp> cat tmp1.out
120000 0 -60000
0 10000 0
-60000 0 40000
tmp> cat tmp2.out
4 0 0
0 5 0
0 0 6
tmp> cat tmp3.out
120004 0 -60000
0 10005 0
-60000 0 40006
printA returns the mass matrix when using central difference and a time step of 1.0 because if you look at the theory that is what the matrix is. "Dynamics of Structures", section 5.3: Khat = 1/(dt^2) M + 1/(2*dt) C, i.e. Khat = M.
you are screwing up somewhere:
wipe
model Basic -ndm 2
node 1 0. 0. -mass 4 5 6
node 2 0. 1.
fix 2 1 1 1
geomTransf Linear 1
element elasticBeamColumn 1 1 2 100 100 100 1
integrator LoadControl 1.0
system FullGeneral
analysis Static
analyze 1
printA -file tmp1.out
wipeAnalysis
integrator CentralDifference
system FullGeneral
analysis Transient
analyze 1 1.0
printA -file tmp2.out
integrator Newmark 0.5 0.25
analyze 1 2.0
printA -file tmp3.out
and results:
tmp> cat tmp1.out
120000 0 -60000
0 10000 0
-60000 0 40000
tmp> cat tmp2.out
4 0 0
0 5 0
0 0 6
tmp> cat tmp3.out
120004 0 -60000
0 10005 0
-60000 0 40006