Automate Reinforcement GSoC proposal

Have some feature requests, feedback, cool stuff to share, or want to know where FreeCAD is going? This is the place.
Forum rules
Be nice to others! Read the FreeCAD code of conduct!
User avatar
Suraj Dadral
Posts: 99
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: Automate Reinforcement GSoC proposal

Postby Suraj Dadral » Mon Jul 08, 2019 5:34 pm

Hello everyone,
I have create function makeTwoTiesSixRebars() to create TwoTiesSixRebars column reinforcement.
commit

Example:

Code: Select all

from ColumnReinforcement import TwoTiesSixRebars
TwoTiesSixRebars.makeTwoTiesSixRebars(40, 30, 50, 45, 20, True, 5, (10, 10), (135, 135), (2, 2), 20, -40, -40, "StraightRebar", "Top Inside", "x-axis", 2, 30)
TwoTiesSixRebars.png
TwoTiesSixRebars.png (19.89 KiB) Viewed 575 times
But there is one problem with LShapeRebars with hook extend along x-axis. It is as shown below:

Code: Select all

from ColumnReinforcement import TwoTiesSixRebars
TwoTiesSixRebars.makeTwoTiesSixRebars(40, 30, 50, 45, 20, True, 5, (10, 10), (135, 135), (2, 2), 20, -40, -40, "LShapeRebar", "Top Inside", "x-axis", 2, 30)
LShapeBars.png
LShapeBars.png (4.77 KiB) Viewed 575 times

In above image, the central main rebars direction can be along +ve x-axis or -ve x-axis.
I am in doubt if LShapeRebars with this configuration is possible in actual reinforcement?
The above problem can be easily eliminated by removing option to choose hook_extend_along, which may be "x-axis" or "y-axis", and setting it default to "y-axis".

Please give your suggestions.

Thanks,
User avatar
amrit3701
Posts: 234
Joined: Mon Jun 13, 2016 5:37 pm

Re: Automate Reinforcement GSoC proposal

Postby amrit3701 » Wed Jul 10, 2019 8:48 am

Suraj Dadral wrote:
Mon Jul 08, 2019 5:34 pm
But there is one problem with LShapeRebars with hook extend along x-axis. It is as shown below:

Code: Select all

from ColumnReinforcement import TwoTiesSixRebars
TwoTiesSixRebars.makeTwoTiesSixRebars(40, 30, 50, 45, 20, True, 5, (10, 10), (135, 135), (2, 2), 20, -40, -40, "LShapeRebar", "Top Inside", "x-axis", 2, 30)
LShapeBars.png


In above image, the central main rebars direction can be along +ve x-axis or -ve x-axis.
I am in doubt if LShapeRebars with this configuration is possible in actual reinforcement?
The above problem can be easily eliminated by removing option to choose hook_extend_along, which may be "x-axis" or "y-axis", and setting it default to "y-axis".

Please give your suggestions.
Hi Suraj,

As I saw, that you have created LShape rebar with "Top Inside" configuration which is fine. It's not important that middle LShape rebars point to +x or -x axis, important is they are inside the stirrup.

Also, please share your next plans. I suggest after completion of two tie reinforcement you should go for a circular column and then beam reinforcement.

Thanks,
User avatar
Suraj Dadral
Posts: 99
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: Automate Reinforcement GSoC proposal

Postby Suraj Dadral » Thu Jul 11, 2019 9:06 am

amrit3701 wrote:
Wed Jul 10, 2019 8:48 am

As I saw, that you have created LShape rebar with "Top Inside" configuration which is fine. It's not important that middle LShape rebars point to +x or -x axis, important is they are inside the stirrup.
Thanks @amrit3701
amrit3701 wrote:
Wed Jul 10, 2019 8:48 am

Also, please share your next plans. I suggest after completion of two tie reinforcement you should go for a circular column and then beam reinforcement.
My next plan is to complete TwoTiesSixRebars column reinforcement and circular column reinforcement before 18 July, 2019.
And after that I will create user documentation and start implementation of beam reinforcement.

Thanks,
User avatar
Suraj Dadral
Posts: 99
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: Automate Reinforcement GSoC proposal

Postby Suraj Dadral » Thu Jul 11, 2019 9:21 am

Hello everyone,

There is one more problem:
When I create TwoTiesSixRebars column reinforcement with different values for diameter of tie1 and tie2, then it will produce column reinforcement as below image:

Code: Select all

from ColumnReinforcement import TwoTiesSixRebars
TwoTiesSixRebars.makeTwoTiesSixRebars(40, 30, 50, 45, 20, True, 5, (8, 20), (135, 135), (2, 2), 20, -40, -40, "StraightRebar", "Top Inside", "x-axis", 2, 30)
TwoTies1.png
TwoTies1.png (8.83 KiB) Viewed 503 times

In above image, rebars crosses the tie.
This can be fixed by setting size of both ties equal.
I also discussed this with my civil engineer friends and according to them, diameter of all ties in column is equal in 99% cases.

Please give your suggestions about this.

Thanks,
User avatar
amrit3701
Posts: 234
Joined: Mon Jun 13, 2016 5:37 pm

Re: Automate Reinforcement GSoC proposal

Postby amrit3701 » Thu Jul 11, 2019 9:47 am

Suraj Dadral wrote:
Thu Jul 11, 2019 9:21 am
In above image, rebars crosses the tie.
This can be fixed by setting size of both ties equal.
I also discussed this with my civil engineer friends and according to them, diameter of all ties in column is equal in 99% cases.

Please give your suggestions about this.
Place inner ties to stirrup which has a bigger diameter. :)
User avatar
Suraj Dadral
Posts: 99
Joined: Fri Sep 07, 2018 5:32 pm
Contact:

Re: Automate Reinforcement GSoC proposal

Postby Suraj Dadral » Thu Jul 11, 2019 9:56 am

amrit3701 wrote:
Thu Jul 11, 2019 9:47 am

Place inner ties to stirrup which has a bigger diameter. :)
To do as suggested above, we will not be able to use function makeSingleTieFourRebars.
So, I will re-implement function makeTwoTiesSixRebars to do this work.

Thanks,
User avatar
hardeeprai
Posts: 167
Joined: Sun May 23, 2010 2:41 pm
Location: Ludhiana, Punjab, India
Contact:

Re: Automate Reinforcement GSoC proposal

Postby hardeeprai » Thu Jul 11, 2019 4:19 pm

Suraj Dadral wrote:
Mon Jul 08, 2019 5:34 pm
I have create function makeTwoTiesSixRebars() to create TwoTiesSixRebars column reinforcement.

<snip>

But there is one problem with LShapeRebars with hook extend along x-axis. It is as shown below:

<snip>

In above image, the central main rebars direction can be along +ve x-axis or -ve x-axis.
I am in doubt if LShapeRebars with this configuration is possible in actual reinforcement?
The above problem can be easily eliminated by removing option to choose hook_extend_along, which may be "x-axis" or "y-axis", and setting it default to "y-axis".
You may do following:

1. Corners bars bent at 45 degrees to side.
2. Non-corner bars bent perpendicular to side

Above mean, all bars bent towards centre (almost) of section.
--
H.S.Rai
User avatar
hardeeprai
Posts: 167
Joined: Sun May 23, 2010 2:41 pm
Location: Ludhiana, Punjab, India
Contact:

Re: Automate Reinforcement GSoC proposal

Postby hardeeprai » Thu Jul 11, 2019 4:24 pm

Suraj Dadral wrote:
Thu Jul 11, 2019 9:21 am
I also discussed this with my civil engineer friends and according to them, diameter of all ties in column is equal in 99% cases.
Take it 100%
--
H.S.Rai
User avatar
hardeeprai
Posts: 167
Joined: Sun May 23, 2010 2:41 pm
Location: Ludhiana, Punjab, India
Contact:

Re: Automate Reinforcement GSoC proposal

Postby hardeeprai » Thu Jul 11, 2019 4:28 pm

Suraj Dadral wrote:
Mon Jul 08, 2019 5:34 pm

Code: Select all

from ColumnReinforcement import TwoTiesSixRebars
TwoTiesSixRebars.makeTwoTiesSixRebars(<snip>)
TwoTiesSixRebars.makeTwoTiesSixRebars()

may be named as:

TwoTiesSixRebars.make()

I mean, rather than

foo.foo()

use

foo.make()
--
H.S.Rai
User avatar
ebrahim raeyat
Posts: 159
Joined: Sun Sep 09, 2018 7:00 pm
Location: Iran
Contact:

Re: Automate Reinforcement GSoC proposal

Postby ebrahim raeyat » Thu Jul 11, 2019 11:36 pm

hardeeprai wrote:
Thu Jul 11, 2019 4:24 pm
Suraj Dadral wrote:
Thu Jul 11, 2019 9:21 am
I also discussed this with my civil engineer friends and according to them, diameter of all ties in column is equal in 99% cases.
Take it 100%
110 % !! because it's for shear resistance and must be equal i think.