I am currently putting together a VBA sub-routine to extract column loads from the RAM Frame module of a RAM model. So far I have successfully navigated the interfaces to extract the Lateral column loads by utilising the GetMemberForces() method.
The Gravity column loads however seem to require a different approach (as mentioned in the GetMemberForces() documentation). I suspect that the newer IMemberForces and IMemberForce interfaces should be able to achieve what I want, however I am not entirely clear on the usage of these. When I run the line (in VBA):
Set IMemberForces = ...
...what should I be passing to this interface? I tried the following:
Set IMemberForces = IModel.GetColumn(IColumn.lUID)
...given my current grasp of DA I thought that it would work, however it does not.
I am aware of the existence of GetGrvColForcesForLCase method, however this only seems to return the axial forces; I would like to retrieve the moments on top of the column too. Would much appreciate any guidance as to how to utilise the IMemberForces interfaces or some other method to achieve my goal.
Think of IMemberForces as a collection of member forces. You have to set the collection by calling a method that returns a collection of the correct type. IModel.GetColumn returns an IColumn interface, not an IMemberForces collection.
Try using the old IForces interface. There is a GetMemberForces method. However, if you are trying to get moments on gravity steel columns, that information probably does not exist because the moments are computed in RAM Steel Column for a particular skip load condition, not a load case. There is a GetConcColumnLiveSkipCase method, but that is for concrete column live load forces coming out of the RAM Concrete Analysis.
Thank you for getting back to me.
You are right, it looks like the IMemberForces is only intended to be used with a few select interfaces at this time - INode and IRawWallSectionCut.
My script is targeted at concrete columns - I sort between steel and concrete columns by using the IColumn.eMaterial property.
Within the context of RAM Frame results the IForces interface method works excellently for lateral columns, however it returns nothing for gravity columns (besides the error code). This makes sense as the method documentation hints that forces for gravity members in RAM Frame are not accessible (refer error table on page 306) through the GetMemberForces() method.
When I view the analysis results from within the RAM Frame window I can clearly see that these columns have some results associated with them (for the gravity cases) and so I expect that there must be a way to recover them through RAM DA as they have to be stored somewhere. I would prefer to avoid using RAM Concrete Analysis if it is possible to pull these results out of RAM Frame. If it is not possible to achieve this I think I will just adopt lateral columns throughout my model to avoid having to deal with this altogether.
I generally have at least one more question related to RAM DA (to do with the Sway/Braced flags) right now, is there some way I can contact you directly or will you guys be OK with me periodically flooding the forum with a couple of questions?
Gravity columns are only considered in the RAM Frame finite element analysis for gravity cases when they support two way slabs and the RAM Frame diaphragm criteria is set to consider members rather than springs for two way slabs. The DA force methods were written before two way slabs were implemented in RAM Frame and have not been enhanced. Gravity column forces from RAM Frame are not considered in RAM Concrete Column or RAM Foundation.
I would prefer to keep the DA correspondence in the forum. It is a bit more tedious, but then others can refer to the post.
Answer Verified By: KONSTANTIN GONCHAROV
Ok, so there is no way to get gravity column loads from RAM Frame because the new interfaces do not yet have the functionality and the old interfaces do not support the kind of set-up that that RAM Frame requires to analyse gravity columns (two-way slabs and member/spring setting).
I think this topic is resolved.