Reverse cycle displacement control at two nodes
Moderators: silvia, selimgunay, Moderators
Reverse cycle displacement control at two nodes
Hi, all,
I have a set of data from a real experiment of a reverse cycle displacement control of a structure. And I am trying to model its behavior with Opensees, so I do a static analysis by applying the displacements (loaded from a file).
To do that I have to define a time series like this:
set History "Series -dt $dt -filePath displacement.out"
and then define the load pattern like this:
pattern Plain 10 $History {
sp $nodeTag $dofTag $dofValue
}
Is it right? It is confuse me beacause the displacements are loaded from a file. How to dtermine the $dofValue?
My 2nd qustion is how to apply two different displacement history at two different nodes. Can I do that like this?
set History1 "Series -dt $dt -filePath displacement1.out"
set History1 "Series -dt $dt -filePath displacement2.out"
and then define the load pattern like this:
pattern Plain 10 $History1 {
sp $nodeTag1 $dofTag $dofValue
}
pattern Plain 10 $History2 {
sp $nodeTag2 $dofTag $dofValue
}
I have a set of data from a real experiment of a reverse cycle displacement control of a structure. And I am trying to model its behavior with Opensees, so I do a static analysis by applying the displacements (loaded from a file).
To do that I have to define a time series like this:
set History "Series -dt $dt -filePath displacement.out"
and then define the load pattern like this:
pattern Plain 10 $History {
sp $nodeTag $dofTag $dofValue
}
Is it right? It is confuse me beacause the displacements are loaded from a file. How to dtermine the $dofValue?
My 2nd qustion is how to apply two different displacement history at two different nodes. Can I do that like this?
set History1 "Series -dt $dt -filePath displacement1.out"
set History1 "Series -dt $dt -filePath displacement2.out"
and then define the load pattern like this:
pattern Plain 10 $History1 {
sp $nodeTag1 $dofTag $dofValue
}
pattern Plain 10 $History2 {
sp $nodeTag2 $dofTag $dofValue
}
Re: Reverse cycle displacement control at two nodes
$dofValue would be a scaling factor for your displacement history. If you do not want to change it, it should be 1.0.
Yes, if you want to simultaneously apply two displacement histories you do exactly what you sad. You only need to have different load pattern tags:
set History1 "Series -dt $dt -filePath displacement1.out"
set History2 "Series -dt $dt -filePath displacement2.out"
and then define the load pattern like this:
pattern Plain 10 $History1 {
sp $nodeTag1 $dofTag1 $dofValue
}
pattern Plain 11 $History2 {
sp $nodeTag2 $dofTag2 $dofValue
}
Yes, if you want to simultaneously apply two displacement histories you do exactly what you sad. You only need to have different load pattern tags:
set History1 "Series -dt $dt -filePath displacement1.out"
set History2 "Series -dt $dt -filePath displacement2.out"
and then define the load pattern like this:
pattern Plain 10 $History1 {
sp $nodeTag1 $dofTag1 $dofValue
}
pattern Plain 11 $History2 {
sp $nodeTag2 $dofTag2 $dofValue
}
Re: Reverse cycle displacement control at two nodes
vesna , it works now. I really appreciate your help.
Now I have another question. I want to apply a load history from a file, and I do it in this way:
set History "Series -dt 0.1 -filePath Force.txt";
pattern Plain 1 $History {
load $node 1.0 0.0 0.0;
}
integrator DisplacementControl $node 1 0.001;
However, I got an error as follows
"DisplacementControl::domainChanged()-Zero refference loadStaticAnalysis::setAlgorithm()-Integrator::domainChanged() failedStaticAnalysis::analysis()-domainChanged failed at step 0 of 10
analyze failed, returned: -1 error flag -1"
Could you give me some guidance again? Thank you.
vesna wrote:
> $dofValue would be a scaling factor for your displacement history. If you
> do not want to change it, it should be 1.0.
>
> Yes, if you want to simultaneously apply two displacement histories you do
> exactly what you sad. You only need to have different load pattern tags:
> set History1 "Series -dt $dt -filePath displacement1.out"
> set History2 "Series -dt $dt -filePath displacement2.out"
> and then define the load pattern like this:
> pattern Plain 10 $History1 {
> sp $nodeTag1 $dofTag1 $dofValue
> }
> pattern Plain 11 $History2 {
> sp $nodeTag2 $dofTag2 $dofValue
> }
Now I have another question. I want to apply a load history from a file, and I do it in this way:
set History "Series -dt 0.1 -filePath Force.txt";
pattern Plain 1 $History {
load $node 1.0 0.0 0.0;
}
integrator DisplacementControl $node 1 0.001;
However, I got an error as follows
"DisplacementControl::domainChanged()-Zero refference loadStaticAnalysis::setAlgorithm()-Integrator::domainChanged() failedStaticAnalysis::analysis()-domainChanged failed at step 0 of 10
analyze failed, returned: -1 error flag -1"
Could you give me some guidance again? Thank you.
vesna wrote:
> $dofValue would be a scaling factor for your displacement history. If you
> do not want to change it, it should be 1.0.
>
> Yes, if you want to simultaneously apply two displacement histories you do
> exactly what you sad. You only need to have different load pattern tags:
> set History1 "Series -dt $dt -filePath displacement1.out"
> set History2 "Series -dt $dt -filePath displacement2.out"
> and then define the load pattern like this:
> pattern Plain 10 $History1 {
> sp $nodeTag1 $dofTag1 $dofValue
> }
> pattern Plain 11 $History2 {
> sp $nodeTag2 $dofTag2 $dofValue
> }
Re: Reverse cycle displacement control at two nodes
Switch to LoadControl integrator and it should work.
Re: Reverse cycle displacement control at two nodes
Thank you. Yes, it works with loadControl. However, there is convergence problem using loadControl in reverse cycle pushover analysis, so I changed it to displacementControl.
-
- Posts: 26
- Joined: Sat Aug 15, 2009 6:42 am
- Location: Bangkok
- Contact:
Re: Reverse cycle displacement control at two nodes
hi hjxiang and Vesna..
I also want to apply the Reverse cyclic history on a certain in my model. I did the same as you( hjxiang) have done,but when I look at the results it shows that displacement is increasing monotonically not as i write in my dispalcement history(i.e reverse cyclic). Can you please share your full input tcl script or atleast the analysis part of you in put plz
I also want to apply the Reverse cyclic history on a certain in my model. I did the same as you( hjxiang) have done,but when I look at the results it shows that displacement is increasing monotonically not as i write in my dispalcement history(i.e reverse cyclic). Can you please share your full input tcl script or atleast the analysis part of you in put plz
Re: Reverse cycle displacement control at two nodes
Here is an example of a cyclic analysis: http://opensees.berkeley.edu/wiki/index ... ed_Element
Ignore the fact that the displacement history was defined in the tcl script.
Ignore the fact that the displacement history was defined in the tcl script.
Re: Reverse cycle displacement control at two nodes
Good Evening!
I am trying to run a 4point bending model model using elasticBeamColumn and 2 zeroLength with pinching4 elements to model the hinges at the loading points. The parameters for P4 are below and included a descending branch but I don't get the analysis to continue on the negative stiffness branch. If I make the stiffness of the elasticBeamColumn elements then the model is capable of taking the descending branch.
What could it be the problem? I am applying a displacement at nodes 2 and 6 from 0 to 4in
Any help would be appreciate it
------------------------------------------------------------------------------------
model BasicBuilder -ndm 2 -ndf 3
# ---------------------------------------------------------------------------------#
# Set Units #
set in 1
set kip 1
set lb [expr $kip/1.000]
# ---------------------------------------------------------------------------------#
# Create Nodes #
node 1 -96.000 0
node 2 -32.000 0
node 3 -32.000 0
node 4 0.000 0
node 5 32.000 0
node 6 32.000 0
node 7 96.000 0
# node DX DY RZ
fix 1 0 1 0
#fix 2 1 0 0
fix 7 1 1 0
equalDOF 2 3 1 2
equalDOF 2 6 2
equalDOF 5 6 1 2
geomTransf Linear 10
set epd1s [expr 0.000001/1000]
set epd2s [expr 0.216792/1000]
set epd3s [expr 0.577391/1000]
set epd4s [expr 1.155537/1000]
set epf1s [expr 258*$lb]
set epf2s [expr 374.98*$lb]
set epf3s [expr 198.82*$lb]
set epf4s [expr 198.81*$lb]
# Negative Moment BackBone Definition #
set end1s [expr -0.000001/1000]
set end2s [expr -0.216792/1000]
set end3s [expr -0.577391/1000]
set end4s [expr -1.155537/1000]
set enf1s [expr -258*$lb]
set enf2s [expr -374.98*$lb]
set enf3s [expr -198.82*$lb]
set enf4s [expr -198.81*$lb]
# ---------------------------------------------------------------------------------#
# Pinching Parameters Definition #
set rdispps [expr 0.17]
set rforceps [expr 0.29]
set uforceps [expr -0.18]
set rdispns [expr 0.2]
set rforcens [expr 0.32]
set uforcens [expr -0.21]
# ---------------------------------------------------------------------------------#
# Damage Parameters Definition # 2
set gk1s 0
set gk2s 1.01
set gk3s 0
set gk4s 0.32
set gklims 1000
set gd1s 0
set gd2s 0
set gd3s 0
set gd4s 0
set gdlims 0
set gf1s 0
set gf2s 0.07
set gf3s 0
set gf4s 0
set gflims 1000
set ges 11.3152
# ---------------------------------------------------------------------------------#
uniaxialMaterial Pinching4 4 $epf1s $epd1s $epf2s $epd2s $epf3s $epd3s $epf4s $epd4s $enf1s $end1s $enf2s $end2s $enf3s $end3s $enf4s $end4s $rdispps $rforceps $uforceps $rdispns $rforcens $uforcens $gk1s $gk2s $gk3s $gk4s $gklims $gd1s $gd2s $gd3s $gd4s $gdlims $gf1s $gf2s $gf3s $gf4s $gflims $ges "energy"
# ---------------------------------------------------------------------------------#
element zeroLength 1 2 3 -mat 4 -dir 6 # Uses uniaxial P4 material
element zeroLength 2 5 6 -mat 4 -dir 6 # Uses uniaxial P4 material
element elasticBeamColumn 3 1 2 2.64605 29500 27.6 10
element elasticBeamColumn 4 3 4 2.64605 29500 27.6 10
element elasticBeamColumn 5 4 5 2.64605 29500 27.6 10
element elasticBeamColumn 6 6 7 2.64605 29500 27.6 10
pattern Plain $DxPattern "Series -dt 1.0 -filePath $filename -factor 1.0" {
sp $ControlNode 2 64
}
constraints Penalty 1e15 1e15
numberer RCM
system FullGeneral
test EnergyIncr 1.e-8 50 0
algorithm Newton
integrator LoadControl 1.0
analysis Static
set ok [analyze 600]
-------------------------------------------------
I am trying to run a 4point bending model model using elasticBeamColumn and 2 zeroLength with pinching4 elements to model the hinges at the loading points. The parameters for P4 are below and included a descending branch but I don't get the analysis to continue on the negative stiffness branch. If I make the stiffness of the elasticBeamColumn elements then the model is capable of taking the descending branch.
What could it be the problem? I am applying a displacement at nodes 2 and 6 from 0 to 4in
Any help would be appreciate it
------------------------------------------------------------------------------------
model BasicBuilder -ndm 2 -ndf 3
# ---------------------------------------------------------------------------------#
# Set Units #
set in 1
set kip 1
set lb [expr $kip/1.000]
# ---------------------------------------------------------------------------------#
# Create Nodes #
node 1 -96.000 0
node 2 -32.000 0
node 3 -32.000 0
node 4 0.000 0
node 5 32.000 0
node 6 32.000 0
node 7 96.000 0
# node DX DY RZ
fix 1 0 1 0
#fix 2 1 0 0
fix 7 1 1 0
equalDOF 2 3 1 2
equalDOF 2 6 2
equalDOF 5 6 1 2
geomTransf Linear 10
set epd1s [expr 0.000001/1000]
set epd2s [expr 0.216792/1000]
set epd3s [expr 0.577391/1000]
set epd4s [expr 1.155537/1000]
set epf1s [expr 258*$lb]
set epf2s [expr 374.98*$lb]
set epf3s [expr 198.82*$lb]
set epf4s [expr 198.81*$lb]
# Negative Moment BackBone Definition #
set end1s [expr -0.000001/1000]
set end2s [expr -0.216792/1000]
set end3s [expr -0.577391/1000]
set end4s [expr -1.155537/1000]
set enf1s [expr -258*$lb]
set enf2s [expr -374.98*$lb]
set enf3s [expr -198.82*$lb]
set enf4s [expr -198.81*$lb]
# ---------------------------------------------------------------------------------#
# Pinching Parameters Definition #
set rdispps [expr 0.17]
set rforceps [expr 0.29]
set uforceps [expr -0.18]
set rdispns [expr 0.2]
set rforcens [expr 0.32]
set uforcens [expr -0.21]
# ---------------------------------------------------------------------------------#
# Damage Parameters Definition # 2
set gk1s 0
set gk2s 1.01
set gk3s 0
set gk4s 0.32
set gklims 1000
set gd1s 0
set gd2s 0
set gd3s 0
set gd4s 0
set gdlims 0
set gf1s 0
set gf2s 0.07
set gf3s 0
set gf4s 0
set gflims 1000
set ges 11.3152
# ---------------------------------------------------------------------------------#
uniaxialMaterial Pinching4 4 $epf1s $epd1s $epf2s $epd2s $epf3s $epd3s $epf4s $epd4s $enf1s $end1s $enf2s $end2s $enf3s $end3s $enf4s $end4s $rdispps $rforceps $uforceps $rdispns $rforcens $uforcens $gk1s $gk2s $gk3s $gk4s $gklims $gd1s $gd2s $gd3s $gd4s $gdlims $gf1s $gf2s $gf3s $gf4s $gflims $ges "energy"
# ---------------------------------------------------------------------------------#
element zeroLength 1 2 3 -mat 4 -dir 6 # Uses uniaxial P4 material
element zeroLength 2 5 6 -mat 4 -dir 6 # Uses uniaxial P4 material
element elasticBeamColumn 3 1 2 2.64605 29500 27.6 10
element elasticBeamColumn 4 3 4 2.64605 29500 27.6 10
element elasticBeamColumn 5 4 5 2.64605 29500 27.6 10
element elasticBeamColumn 6 6 7 2.64605 29500 27.6 10
pattern Plain $DxPattern "Series -dt 1.0 -filePath $filename -factor 1.0" {
sp $ControlNode 2 64
}
constraints Penalty 1e15 1e15
numberer RCM
system FullGeneral
test EnergyIncr 1.e-8 50 0
algorithm Newton
integrator LoadControl 1.0
analysis Static
set ok [analyze 600]
-------------------------------------------------
Re: Reverse cycle displacement control at two nodes
what is the error message?
Re: Reverse cycle displacement control at two nodes
Thanks for your reply Frank,
There is not error message, the program executes all the monotonic displacements in the pattern I set. However the response I am getting from the zeroLength elements does not match the backbone in the pinching4 uniaxial material. After the peak the program for some reason jumps to a incredible huge rotation (~100 times the corresponding point 3 of the defined backbone.
I guess my question is whether there is a compatibility problem when using the zeroLength elements to simulate hinges together with elasticbeamcolumn elements.
One thing, if I make the elasticbeamcolumn elements rigid (multiplying E by 1000) I get the zeroLength element response to have a descending branch, but that is not the behavior I want.
Or if there is a way to run the analysis that can get me on the descending branch of the backbone without problems.
Thank you for your help
There is not error message, the program executes all the monotonic displacements in the pattern I set. However the response I am getting from the zeroLength elements does not match the backbone in the pinching4 uniaxial material. After the peak the program for some reason jumps to a incredible huge rotation (~100 times the corresponding point 3 of the defined backbone.
I guess my question is whether there is a compatibility problem when using the zeroLength elements to simulate hinges together with elasticbeamcolumn elements.
One thing, if I make the elasticbeamcolumn elements rigid (multiplying E by 1000) I get the zeroLength element response to have a descending branch, but that is not the behavior I want.
Or if there is a way to run the analysis that can get me on the descending branch of the backbone without problems.
Thank you for your help
Re: Reverse cycle displacement control at two nodes
Hi! All
I am beginner in opensees. I want to know how to apply cyclic increasing displacement history. for example 3 cycle of displacement:
0, 1.0, 0, -1.0, 0; 0, 2.0, 0, -2.0, 0; 0, 4.0, 0, -4.0, 0. Any help is highly appreciated.
Regards
Teruna
I am beginner in opensees. I want to know how to apply cyclic increasing displacement history. for example 3 cycle of displacement:
0, 1.0, 0, -1.0, 0; 0, 2.0, 0, -2.0, 0; 0, 4.0, 0, -4.0, 0. Any help is highly appreciated.
Regards
Teruna