Hi Clemens,

Thanks, I have read that post recently, but I reread it and did some additional checks. I built an ETABS model to confirm results from my matlab script. I also implemented a response spectrum analysis with modal superposition by SRSS method. Model period, mode shapes, modal mass, MPMR, and RSA displacements are all identical to the ETABS model.

Comparing these results to the karamba script: again, periods, mode shapes, modal mass, are identical, however the participation factors differ. The participation factors are proportional to mine but they are scaled differently, and I do not know why. This obviously affects the displacements, thus those are different too.

I am not sure how karamba calculates the participation factors specifically. I am assuming they are scaled based on the mode shapes being normalized such that the largest component is 1 (as you mention), but the units they are calculated with also affect their magnitude. It appears based on the output that everything is calculated with kips and feet and then multiplied back as necessary (to lbm for modal mass for example). Nevertheless, in the calculation of the displacements, the way in which the modes are normalized in relation to the calculation of the participation factor should not matter because you have to multiply back by the mode shape anyway in order to find displacements:

[u=displacement, phi=mode shape, Gamma=participation factor, Mn=modal mass, D=pseudo-displacement, A=pseudo-acceleration, omega=angular frequency] Chopra,

u=phi*q, where*

q=GammaD,

Gamma=Ln/Mn,

Ln=phi’ML,

Mn=phi’Mphi,

D=A/omega^2,

u=phi*(phi’*M*L/phi’*M*phi)*D,

all phi and M cancel, L is unitless, thus units for u should be units of length the same as D.

The fact that my displacements (which should be independent of the normalization of the modes, etc) are also different is why I have reason to believe the participation factor might be scaled incorrectly with respect to the normalization of the mode shapes (for imperial units at least), or some other conversion inconsistency exists. However, I am not entirely sure–I could be making some other calculation mistake in the gh script, which is why I was hoping someone else had implemented a response spectrum analysis, but I could only find the link that you gave me in your last post, and it is in SI, thus I cannot confirm.

I was hoping you wouldn’t mind taking a look at it and telling me if and where I have gone wrong, or if there is indeed an error in the calculation of the participation factor for imperial units in karamba. I am ok to wait if this might take a while.

Thank you,

SP

See attachments and screenshots.

RSA_2DOF.pdf (214.6 KB)

natural vibes participation factors.gh (27.5 KB)