Hi OpenSEES developers,
OpenSEES really needs a modal participation factor calculation procedure. It's something very common in dynamic analysis of any type. I really miss it.
It shouldn't be to hard to program, maybe I could do it if I understood how OpenSEES works. But just looking at the codes doesn't help much.
If someone gives me a hint start I could try, and I'd love to collaborate.
Thank you.
Jose Abell
Modal Participation Factor
Moderators: silvia, selimgunay, Moderators
Hi Silvia,
I'm sure it could be done. All I need is the mass matrix, and that I don't really know how to extract. I've seen some threads in the forum and no one has actually answered how to do it. FMK pasted some code in one thread, but I couldn't make anything of it.
You think this is easier?
Thank you,
Jose Abell
I'm sure it could be done. All I need is the mass matrix, and that I don't really know how to extract. I've seen some threads in the forum and no one has actually answered how to do it. FMK pasted some code in one thread, but I couldn't make anything of it.
You think this is easier?
Thank you,
Jose Abell
For beam problems, lump 1/2 the element mass at each of its nodes. Assuming the eigenvectors are mass normalized, multiply the eigenvector displacement for the direction of interest times the nodal mass. Sum all these products up to yield the participation factor.
For plates and solids a good FEA text will have the equations to calculate the consistent mass matrix for an element, from which the lumped masses at each node can be calculated (there are different ways to do this). Once the lumped mass matrix is found for the element nodes, repeat the procedure above.
This assumes that the influence vector is 1 for all nodes in the direction of interest, and zero elsewhere.
Agreed, it'd be nice to be able to query the mass at a node rather than having to compute it.
PB
For plates and solids a good FEA text will have the equations to calculate the consistent mass matrix for an element, from which the lumped masses at each node can be calculated (there are different ways to do this). Once the lumped mass matrix is found for the element nodes, repeat the procedure above.
This assumes that the influence vector is 1 for all nodes in the direction of interest, and zero elsewhere.
Agreed, it'd be nice to be able to query the mass at a node rather than having to compute it.
PB