Karamba - Floor load seems to transfer through only corner columns

Dear readers, Karamba team,

I’m trying to conduct a Karamba Optimize Cross Section experiment.

While I have made good progress with most aspects (supports, defining selection profiles, load cases, etc), there seems to be something off with the load transfer from the floor onto the columns. My assumption is that the floor load is only transferred onto the corner columns, not on the other columns?

I have attached a diagram of the behaviour. This happens for both the case with single surface input, as well as a split surface (split on the beam curves).

Hopefully somebody could help me out or direct me towards the right direction.

Kind regards,

Hi @Bob,

you should check if the loads are distributed correctly on the floor or on the beams. Karamba uses an automatic calulcation to distribute the load, but this can vary with the Mesh density, as well as the ElementIds you input into your Loads component to define which elements receive the node. A coarse mesh would result in inaccurate distributions.

Also, you can check the activate the Normal Forces in the Section Forces component to visualise the amount of force which has been distributed into the columns.

Hi Bob, Matt. it will not probably answer your question, only adds to the question really as i am having same issues. The tutorial on this subject https://www.karamba3d.com/tutorials/tutorials_basics/simple-shell-and-beam/ clearly shows that perimeter beams are not “meshed” with the plate and the slab and beams are working separately. essentially, perimeter beams need to be divided into same number of segments so that plate and beam share same nodes. i guess this will result in problems with import into Revit since it will probably do that as a series of short beams. but for the sake of calculations the right way to analyse shell and frame structure together would be as meshed together. Matt, any thoughts on this? I send email about this Junghwo Park who was doing the tutorial on this but he hasn’t replied yet.

1 Like

Hi @GVM,

yes this is a correct. For accurate simulation of ribs in Karamba, you should make sure that the beams are split into segments where the mesh vertices are also located. One workflow is to divide and split the beam into smaller segments and use the points in the meshing process.

Hi @matttam,

A bit late but nevertheless, thank you for your help, it truly helped me out, sorry for this late confirmation of your solution.

I marked your answer as the solution to my problem, because indeed, it was solved by:

  • resolving data tree issues
  • using the beam dividing vertices as inclusion points (IPts) in the meshing process using Karamba’s Mesh Breps component.

I do however have one more question (let me know if it is preferred if I make a new post), which has a bit to do with @gvm 's reply:

Is it possible to retrieve, after the OptiCroSec, using the disassemble model-> disassemble element:

  1. the mass per material?
  2. the chosen cross section profile name?

I found this thread (Mass per element - Grasshopper) but was unable to recreate it in GHPython using RH6, or could that be my unknowing? For the rectangular sections, I think I could figure it out with the axis length and profile size, but how would one proceed for more complex profiles?


Hi @spitz.bob,
there will be a component for retrieving the mass per material from Karamba3D models in one of the next WIP releases. In the meantime, one needs to use a little script for this (see this file, which was tested with Karamba3D 2.0.0 210505 WIP:
DataRetrieval.gh (19.0 KB)).
Use the ‘Disassemble Model’-, ‘Disassemble Element’- and ‘Disassemble Cross Section’-components in sequence to get hold of the cross section names and cross section area. From the latter and the length of the element axes one can determine the mass per element.
– Clemens

Dear Clemens, @karamba3d,

Thank you for the suggestions.
I downloaded the WIP version and tested it in RH7; getting this error:


Could it have to do with the fact that I did not uninstall the previous version of Karamba?