Skip to content

Conversation

@DanielGMorenaFhecor
Copy link
Collaborator

This PR implements the different formulas under the Chapter 8.5-Strut and Ties from the EC2-2023.
Related issues: #57 , #58 and #59.

mortenengen and others added 29 commits December 13, 2022 21:01
@DanielGMorenaFhecor DanielGMorenaFhecor added the enhancement New feature or request label Aug 5, 2024
Copy link
Collaborator

@talledodiego talledodiego left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent contribution and code @DanielGMorenaFhecor. For me some minor adjustments and is ready for merge.


theta_rad = math.radians(theta_cs)
cot_theta = 1 / math.tan(theta_rad)
return 1 / (1.11 + 0.22 * (cot_theta**2))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are we sure that using eq. 8.119 we have the same limits for theta as using eqs. 8.115-8.118?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That is a good question! Mmm... If i perform the calculations in a simple Excel Worksheet I am getting the following values:

Angle Rads Cotg Nu
20 0.349 2.747 0.36
30 0.524 1.732 0.56
40 0.698 1.192 0.70
60 1.047 0.577 0.85
90 1.571 0.000 0.90

Values from 8.199 are more or less similar to values from Eq. 8.115-8.118, but limits are not identical.

Would you suggets implementing both approaches in the codebase?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the comment. I agree with your observation, I see equations 8.115-8.118 as alternative formulation to 8.119.
We can either implement the two approaches or leave only the 8.119 approach. Either way, I am not sure that equation 8.119 is not valid for an angle lower than 20 degrees.

@DanielGMorenaFhecor
Copy link
Collaborator Author

Thank you very much Diego for your comments! I already fixed the typos.

I have just one question regarding the use of the equations 8.115-8.118 and 8.119. Please, refer to the comment for further explanation. 👍

Copy link
Collaborator

@talledodiego talledodiego left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with your comment. The only thing, I am not sure that theta must be between 20 and 90 when using 8.119. For how it is written the code I think the equation is valid also for angles lower than 20° maybe?

Anyhow excellent, in my opinion it can be merged in dev!

@DanielGMorenaFhecor
Copy link
Collaborator Author

I have been considering equation 8.119 and its implications. It seems logical to allow for values lower than 20°, especially when trying to establish an analogous relationship with equation 8.121: nu = 1 / (1.0 + 110 * eps_1) , where eps_1 is the principal strain.

To achieve this, I have adapted the method for computing ν as a function of the angle theta, allowing values between 0° and 90°. An important modification includes incorporating a small epsilon to handle cases where theta=0, which would otherwise result in cot(theta)=Inf.

Copy link
Collaborator

@talledodiego talledodiego left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfect!

Copy link
Member

@mortenengen mortenengen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Excellent contribution @DanielGMorenaFhecor. I have merged dev, added a couple of changes to the docstrings, and added the functions to the API docs. Could you please add tests that cover the lines that are not yet covered in _section_8_5_strut_and_ties.py?

@mortenengen mortenengen changed the base branch from dev to dev-ec2-2023 October 10, 2024 19:30
@mortenengen mortenengen moved this from Changes requested to Review changes in EC2 2023 PR tracker Sep 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

EC2 2023 Eurocode 2 (2023) enhancement New feature or request

Projects

Status: Review changes
Status: Changes requested 📝

Development

Successfully merging this pull request may close these issues.

EC2 2023: Nodes EC2 2023: Ties EC2 2023: Struts and compression fields

3 participants