Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Model support in between element length #191

Open
ajossorioarana opened this issue Sep 27, 2023 · 2 comments
Open

Model support in between element length #191

ajossorioarana opened this issue Sep 27, 2023 · 2 comments
Labels

Comments

@ajossorioarana
Copy link
Contributor

Hi! I am trying to model a diagonal beam that has two supports, one of them is in the edge of the element and the other one is a little bit before the lower end, something like this, but where elements 1 and 2 are the same continuos element:

image

Is this possible right now?

Thanks in advance!

@ajossorioarana
Copy link
Contributor Author

Me leaving some additional feedback:

Unless I'm missing something, the following code reproduces the desired behavior:

ss = anas.SystemElements()

punto_sup = anas.Vertex(x=1, y=3.08)
apoyo_int = anas.Vertex(x=4.12, y=1.27)
punto_inf = anas.Vertex(x=4.58, y=1)

ss.add_element(location=[punto_sup, apoyo_int])
ss.add_element(location=[apoyo_int, punto_inf])
ss.add_support_hinged([1, 2])

ss.q_load(q=-5, element_id=[1, 2], direction="y")

ss.show_structure()

ss.solve()

ss.show_displacement()

Structure:
image

Displacement
image

I still don't get why if I add two elements to the model, they are considered as part of the same rigid body.

@AsgerKrllAnd
Copy link

If the two elements were not considered the same body as standard, defining the loads would be a lot harder.

If you want to consider the two elements as separate elements that are each supported at the same point (support 2), you could achieve this by adding a spring to your first or second element.

like this:

from anastruct import SystemElements

ss = SystemElements()

ss.add_element([[0,0],[10,0]], spring= [0,1]) # [start node, end node], 1 indicates its released, 0 means stiff
ss.add_element([[10,0],[12,0]])

ss.add_support_hinged([1,2])

ss.q_load(element_id=1, q=-10)

ss.solve()
ss.show_displacement()

Figure_1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants