Concrete Module API - Adding Stirrups and Longitudinal Rebars

Hello, I am trying to design a reinforced concrete section in the Concrete Design module using the API. However, I am unable to create more than two items for both stirrups and longitudinal reinforcement, even though I have set no = 3 for each of them.

It seems that only two reinforcement entries are generated regardless of the value I assign. Could you please check the code snippet below and let me know if I am missing a required step or if there is a limitation in the API?

 ConcreteShearReinforcementSpansTable = []

    ConcreteShearReinforcementSpansTable.append(
        rfem.structure_core.Member.ConcreteShearReinforcementSpansRow(
            no=1,
            description='SR1',
            stirrup_type='STIRRUP_TYPE_TWO_LEGGED_CLOSED_HOOK_90',
            material=2,
            stirrup_diameter=stirrup_reinforcement_diameters[5-1],
            stirrup_distances=S_d[1-1],
            span_position_reference_type='SPAN_POSITION_REFERENCE_TYPE_START',
            span_position_definition_format='SPAN_POSITION_DEFINITION_FORMAT_RELATIVE',
            span_start_relative=0,
            span_end_relative=L / 6 / L
        )
    )
    ConcreteShearReinforcementSpansTable.append(
        rfem.structure_core.Member.ConcreteShearReinforcementSpansRow(
            no=2,
            description='SR2',
            stirrup_type='STIRRUP_TYPE_TWO_LEGGED_CLOSED_HOOK_90',
            material=2,
            stirrup_diameter=stirrup_reinforcement_diameters[5-1],
            stirrup_distances=S_d[2-1],
            span_position_reference_type='SPAN_POSITION_REFERENCE_TYPE_START',
            span_position_definition_format='SPAN_POSITION_DEFINITION_FORMAT_RELATIVE',
            span_start_relative=L / 6 / L,
            span_end_relative=5 * L / 6 / L,
        )
    )
    ConcreteShearReinforcementSpansTable.append(
        rfem.structure_core.Member.ConcreteShearReinforcementSpansRow(
            no=3,
            description='SR3',
            stirrup_type='STIRRUP_TYPE_TWO_LEGGED_CLOSED_HOOK_90',
            material=2,
            stirrup_diameter=stirrup_reinforcement_diameters[5-1],
            stirrup_distances=S_d[3-1],
            span_position_reference_type='SPAN_POSITION_REFERENCE_TYPE_START',
            span_position_definition_format='SPAN_POSITION_DEFINITION_FORMAT_RELATIVE',
            span_start_relative=5 * L / 6 / L,
            span_end_relative=L / L
        )
    )

    ConcreteLongitudinalReinforcementItemsTable =[]

    ConcreteLongitudinalReinforcementItemsTable.append(
        rfem.structure_core.Member.ConcreteLongitudinalReinforcementItemsRow(
            no=1,
            description='LR1',
            rebar_type='REBAR_TYPE_UNIFORMLY_SURROUNDING',
            material=3,
            bar_count_uniformly_surrounding=4,
            bar_size_designation_uniformly_surrounding=longitudinal_reinforcement_diameters[1-1],
            span_length=L,
            additional_offset_type='ADDITIONAL_OFFSET_TYPE_FROM_STIRRUP',
            additional_offset_left_side=-0.010,
            additional_offset_right_side=-0.010
        )
    )

    ConcreteLongitudinalReinforcementItemsTable.append(
        rfem.structure_core.Member.ConcreteLongitudinalReinforcementItemsRow(
            no=2,
            description='LR2',
            rebar_type='REBAR_TYPE_LINE',
            material=3,
            bar_count_line=2,
            bar_size_designation_line=longitudinal_reinforcement_diameters[1 - 1],
            span_length=L,
            additional_offset_type_single_line = 'ADDITIONAL_OFFSET_TYPE_SINGLE_LINE_FROM_STIRRUP',
            additional_offset_reference_type_at_start='ADDITIONAL_OFFSET_REFERENCE_TYPE_AT_START_LEFT_BOTTOM',
            additional_horizontal_offset_at_start=0,
            additional_vertical_offset_at_start=0.040,
            additional_offset_reference_type_at_end='ADDITIONAL_OFFSET_REFERENCE_TYPE_AT_END_RIGHT_TOP',
            additional_horizontal_offset_at_end=0,
            additional_vertical_offset_at_end=0.040
        )
    )

    ConcreteLongitudinalReinforcementItemsTable.append(
        rfem.structure_core.Member.ConcreteLongitudinalReinforcementItemsRow(
            no=3,
            description='LR3',
            rebar_type='REBAR_TYPE_LINE',
            material=3,
            bar_count_line=2,
            bar_size_designation_line=longitudinal_reinforcement_diameters[1 - 1],
            span_length=L,
            additional_offset_type_single_line='ADDITIONAL_OFFSET_TYPE_SINGLE_LINE_FROM_STIRRUP',
            additional_offset_reference_type_at_start='ADDITIONAL_OFFSET_REFERENCE_TYPE_AT_START_LEFT_TOP',
            additional_horizontal_offset_at_start=0.030,
            additional_vertical_offset_at_start=0,
            additional_offset_reference_type_at_end='ADDITIONAL_OFFSET_REFERENCE_TYPE_AT_END_RIGHT_BOTTOM',
            additional_horizontal_offset_at_end=0.030,
            additional_vertical_offset_at_end=0
        )
    )

Member = rfem.structure_core.Member(
        no=1,
        node_start=1,
        node_end=n_nodes,
        cross_section_start=1,
        cross_section_end=1,
        design_properties_via_member=True,
        concrete_shear_reinforcement_spans=rfem.structure_core.Member.ConcreteShearReinforcementSpansTable(
            rows=ConcreteShearReinforcementSpansTable),
        concrete_longitudinal_reinforcement_items=rfem.structure_core.Member.ConcreteLongitudinalReinforcementItemsTable(
            rows=ConcreteLongitudinalReinforcementItemsTable
        )
    )

Hi studentInu11,
recently we’ve found similar issue and already working on the fix.
Should be available in comming release 6.13.0009/2.13.9 together with an example to demonstrate how to use it.

Regards

2 Likes