Hi all
Is it possible in Opensees to apply DisplacementControl on two points (or more) at the same time?
integrator DisplacementControl
Moderators: silvia, selimgunay, Moderators
Re: integrator DisplacementControl
If the displacements are the same you can add a equalDOF between the two (or more) nodes you want to see displaced?
-
- Posts: 115
- Joined: Mon Feb 20, 2017 1:19 am
- Location: RMIT University, Melbourne, Australia
Re: integrator DisplacementControl
Yes, equal DOF can do it as they share the same degrees of freedom
-
- Posts: 108
- Joined: Mon Sep 16, 2013 1:14 pm
- Location: University of Auckland
Re: integrator DisplacementControl
The integrator DisplacementControl receives just one node and one DOF, so you can not pass 2 nodes to the command. As previously stated one option is to constrain the node displacements with equalDOF command and pass just one node to the integrator, but that might be a limitation for your model in the case you want to have the two nodes moving free from one another.
What you could do, could be run the [analyze 1] command within a while loop and define the braking statement of the while loop as specific displacements for the two nodes. You can get the displacements of the nodes with the command [nodeDisp $node $DOF]. Example below
while {[nodeDisp $N1 $dir1] < $d1 && [nodeDisp $N2 $dir2] < $d2} {
...
analyze 1
....
}
What you could do, could be run the [analyze 1] command within a while loop and define the braking statement of the while loop as specific displacements for the two nodes. You can get the displacements of the nodes with the command [nodeDisp $node $DOF]. Example below
while {[nodeDisp $N1 $dir1] < $d1 && [nodeDisp $N2 $dir2] < $d2} {
...
analyze 1
....
}
-
- Posts: 13
- Joined: Mon May 09, 2016 2:39 pm
Re: integrator DisplacementControl
Thank you all.