fracture modeling
Moderators: silvia, selimgunay, Moderators
fracture modeling
Hello,
I have heard on this message board that it is possible to pause the analysis and make changes to the model. I cannot find the post anymore but is this true?
I would like to keep track of an element's force and displacement. If either of those reaches a certain limit, I would like to pause OpenSEES and replace it with a new element.
Do you know the syntax or have any references?
Thanks!
I have heard on this message board that it is possible to pause the analysis and make changes to the model. I cannot find the post anymore but is this true?
I would like to keep track of an element's force and displacement. If either of those reaches a certain limit, I would like to pause OpenSEES and replace it with a new element.
Do you know the syntax or have any references?
Thanks!
yes and you can use the following commands to monitor progress:
to remove an element the command is:
just make sure if you remove an element you stop any recorders that ontain the element as you will currently get a seg fault if you don't.
Code: Select all
nodeDisp nodeTag? dof?
eleForce eleTag? dof?
Code: Select all
remove element eleTag?
-
- Posts: 123
- Joined: Tue Oct 31, 2006 10:40 am
- Location: k.n.toosi University
It is really an interesting topic. Is it really possible to model connection fracture this way? Is it possible to:
1) monitor the node rotation first and then
2) at specified rotation (say 0.02 rad), break the analysis, and then romove the node or element and
3) continue the analysis with the rest of the model?
Is it really possible to do such a task in Opensees?
1) monitor the node rotation first and then
2) at specified rotation (say 0.02 rad), break the analysis, and then romove the node or element and
3) continue the analysis with the rest of the model?
Is it really possible to do such a task in Opensees?
Pejman
Thank you Frank, I appreciate your help.
And I hope that it is possible. Ina couple of days I will probably do a simple check with a single element or frame to get a feel for its performance.
There might be some funny issues with introducing a brand new element with a new stiffness but I guess I will find out soon!
And I hope that it is possible. Ina couple of days I will probably do a simple check with a single element or frame to get a feel for its performance.
There might be some funny issues with introducing a brand new element with a new stiffness but I guess I will find out soon!
-
- Posts: 123
- Joined: Tue Oct 31, 2006 10:40 am
- Location: k.n.toosi University
Hello,
So I think, as of now, this method works nicely. Of course, I running into some logistical issues so hopefully it will work out. Also, I am testing with only 1 element which simplifies things a lot.
When I replace the element after it reaches a certain displacement, the new element is inserted, however, it resets to 0 stress and 0 strain. I was expecting this, but I cant seem to find a solution yet. Maybe there is a way to give an element an initial stress and strain?? Does anyone know?
Modeling fracture may be easier because you can just remove the element and not replace it. That way there is no worries about the current state of the new element.
Thanks!
So I think, as of now, this method works nicely. Of course, I running into some logistical issues so hopefully it will work out. Also, I am testing with only 1 element which simplifies things a lot.
When I replace the element after it reaches a certain displacement, the new element is inserted, however, it resets to 0 stress and 0 strain. I was expecting this, but I cant seem to find a solution yet. Maybe there is a way to give an element an initial stress and strain?? Does anyone know?
Modeling fracture may be easier because you can just remove the element and not replace it. That way there is no worries about the current state of the new element.
Thanks!
-
- Posts: 123
- Joined: Tue Oct 31, 2006 10:40 am
- Location: k.n.toosi University
I have not tested this method yet but just as a question: " What would happen if we had a structrue in which several nodes and elements may be subject to fracture?"
To resolve this problem reasonably, one suggestion would be to assign some node monitoring within the tcl code of the model and then get the report of stress or strain ( or alternatively moments and forces) and save them all into variables. Then check if these variables reach or exceed a threshold and if so, use remove command to remove the element from the model. and then analysis may continue with the rest of the model.
All of these abovementioned steps would be better done automatically to save time and energy!
I wonder whether or not this is possible .
thanks alot
To resolve this problem reasonably, one suggestion would be to assign some node monitoring within the tcl code of the model and then get the report of stress or strain ( or alternatively moments and forces) and save them all into variables. Then check if these variables reach or exceed a threshold and if so, use remove command to remove the element from the model. and then analysis may continue with the rest of the model.
All of these abovementioned steps would be better done automatically to save time and energy!
I wonder whether or not this is possible .
thanks alot
Pejman
Hello,
Yes that is similar to what I did (although I was just using 1 element, I'm sure it wont be too different for multiple elements). Inside the model, I have a check that monitors the disp/forces. The one downside is that I have to perform the analysis 1 step at a time. With a very fast computer, however, this wont really matter too much. I have the following code:
There may be a more efficient way to do this but this is what first came to my head so I did it just to check the method.
OR, it may be easier to use the MinMax command which allows an element to be functional only if its strains remain within a certain range that you set
Hope this helps!
Yes that is similar to what I did (although I was just using 1 element, I'm sure it wont be too different for multiple elements). Inside the model, I have a check that monitors the disp/forces. The one downside is that I have to perform the analysis 1 step at a time. With a very fast computer, however, this wont really matter too much. I have the following code:
Code: Select all
analysis Transient;
puts "Analyzing..."
set dispCheck [nodeDisp 2 1];
set forceCheck [eleForce 1 1];
set count 0;
while {abs($dispCheck) < $disp_Limit && $count <= $num_steps} {
analyze 1 1;
set count [expr $count + 1];
set dispCheck [nodeDisp 2 1];
puts $dispCheck
}
set controlTime [getTime]
if {$controlTime/$dt < $num_steps} {
remove element 1;
element nonlinearBeamColumn 1 1 2 5 $post_secID $transfTag;
remove recorder $recorderTag1;
remove recorder $recorderTag2;
recorder Element -file Data/Force2.txt -time -ele 1 localForce;
recorder Element -file Data/def2.txt -time -ele 1 section 2 deformation;
puts "woot"
integrator Newmark 0.5 0.25
constraints Transformation
numberer RCM
system BandGeneral
integrator LoadControl 1;
test NormDispIncr 1.0e-8 100;
set NewtonLineSearch_Ratio 0.65
set algorithmType NewtonLineSearch
algorithm $algorithmType $NewtonLineSearch_Ratio;
analyze [expr int($num_steps-$controlTime/$dt)] $dt
}
OR, it may be easier to use the MinMax command which allows an element to be functional only if its strains remain within a certain range that you set
Hope this helps!
recorder tag??
hello users
I am trying similar things you guys did here. I simulate the fracture of pt bar in my model so I use "remove" command to eliminate the pt element during analysis. But I have a question regarding recorderTag shown in the code ca493 posted above.
I can successfully remove the element however, I don't know how to remove the recorder that records the removed element response. In the code, "recorderTag" seems to be used to identify the recorder to remove. But there is no recordertag anywhere in recorder tcl command. my os crashed because of this.. would you help me how to remove recorder?
I am trying similar things you guys did here. I simulate the fracture of pt bar in my model so I use "remove" command to eliminate the pt element during analysis. But I have a question regarding recorderTag shown in the code ca493 posted above.
I can successfully remove the element however, I don't know how to remove the recorder that records the removed element response. In the code, "recorderTag" seems to be used to identify the recorder to remove. But there is no recordertag anywhere in recorder tcl command. my os crashed because of this.. would you help me how to remove recorder?