gap material

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Post by civilso »

excuse me.I need your help.please help me again.

I used series material for gap element.
gap material E=2100000
minus gap material E=-2100000. is it correct?
after that I refined my displacement file.

so I don't have convergence error but
the reaction of sp points that connect by gap material to main model are zero.it meens that gap material don't work properly
WHAT'S WRONG?
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Post by vesna »

Would you please post your files so I can run it and see what the problem can be?
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

I have a displacement file but it's too long. I can't post it. may I have your email address to attach it :?:
It is my model.
It doesn't have nonlinear Behavior :?: :?: :?: :?:

# NodeCoord.tcl


# Node tag xCrd yCrd

node 1 +9.900000E+001 +5.000000E+001

node 2 +1.000000E+002 +5.000000E+001

node 3 +1.000000E+002 +1.000000E+002

node 4 +9.900000E+001 +1.000000E+002

node 5 +1.000000E+002 +1.500000E+002

node 6 +9.900000E+001 +1.500000E+002

node 7 +2.000000E+002 +1.001000E+002

node 8 +3.000000E+002 +1.000000E+002


# SPConstraint.tcl


# SPC tag Dx Dy Rz

fix 1 1 1 0

fix 2 1 1 0

fix 5 1 1 0

fix 6 1 1 0

fix 8 0 1 0


# MPConstraint.tcl


# Materials.tcl


# Material "Materialst": matTag Fy E b a1 a2 a3 a4
uniaxialMaterial Steel01 1 +2.400000E+003 +2.100000E+006 +5.000000E-002 +0.000000E+000 +1.000000E+000 +0.000000E+000 +1.000000E+000


# Material "Materialgap": matTag E Fy gap
uniaxialMaterial ElasticPPGap 2 +2.100000E+006 +2.400000E+003 +1.000000E-001


# Material "Materialminesgap": matTag E Fy gap
uniaxialMaterial ElasticPPGap 3 -2.100000E+006 +2.400000E+003 +1.000000E-001


# Material "Materialmix": matTag tags
uniaxialMaterial Series 4 2 3

# Sections.tcl


# Section "Sectionboxgap": secTag
section Fiber 1 {

# PatchBox "Patch01": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 2 3 3 +3.500000E-001 +5.000000E-001 +3.500000E-001 -5.000000E-001 +5.000000E-001 -5.000000E-001 +5.000000E-001 +5.000000E-001
patch quad 2 3 3 -3.500000E-001 +5.000000E-001 -3.500000E-001 +3.500000E-001 +3.500000E-001 +3.500000E-001 +3.500000E-001 +5.000000E-001
patch quad 2 3 3 -3.500000E-001 -3.500000E-001 -3.500000E-001 -5.000000E-001 +3.500000E-001 -5.000000E-001 +3.500000E-001 -3.500000E-001
patch quad 2 3 3 -5.000000E-001 +5.000000E-001 -5.000000E-001 -5.000000E-001 -3.500000E-001 -5.000000E-001 -3.500000E-001 +5.000000E-001

#Fiber "Sectionboxgap": y z A matTag
fiber +0.000000E+000 +0.000000E+000 +0.000000E+000 2
}


# Section "Sectionboxst": secTag
section Fiber 2 {

# PatchBox "Patch01": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 1 3 3 +3.500000E-001 +5.000000E-001 +3.500000E-001 -5.000000E-001 +5.000000E-001 -5.000000E-001 +5.000000E-001 +5.000000E-001
patch quad 1 3 3 -3.500000E-001 +5.000000E-001 -3.500000E-001 +3.500000E-001 +3.500000E-001 +3.500000E-001 +3.500000E-001 +5.000000E-001
patch quad 1 3 3 -3.500000E-001 -3.500000E-001 -3.500000E-001 -5.000000E-001 +3.500000E-001 -5.000000E-001 +3.500000E-001 -3.500000E-001
patch quad 1 3 3 -5.000000E-001 +5.000000E-001 -5.000000E-001 -5.000000E-001 -3.500000E-001 -5.000000E-001 -3.500000E-001 +5.000000E-001

#Fiber "Sectionboxst": y z A matTag
fiber +0.000000E+000 +0.000000E+000 +0.000000E+000 1
}


# Section "Sectionminesgap": secTag
section Fiber 3 {

# PatchBox "Patch01": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 3 3 3 +3.380000E+000 +3.500000E+000 +3.380000E+000 -3.500000E+000 +3.500000E+000 -3.500000E+000 +3.500000E+000 +3.500000E+000
patch quad 3 3 3 -3.380000E+000 +3.500000E+000 -3.380000E+000 +3.380000E+000 +3.380000E+000 +3.380000E+000 +3.380000E+000 +3.500000E+000
patch quad 3 3 3 -3.380000E+000 -3.380000E+000 -3.380000E+000 -3.500000E+000 +3.380000E+000 -3.500000E+000 +3.380000E+000 -3.380000E+000
patch quad 3 3 3 -3.500000E+000 +3.500000E+000 -3.500000E+000 -3.500000E+000 -3.380000E+000 -3.500000E+000 -3.380000E+000 +3.500000E+000

#Fiber "Sectionminesgap": y z A matTag
fiber +0.000000E+000 +0.000000E+000 +0.000000E+000 3
}


# Section "Sectionmix": secTag
section Fiber 4 {

# PatchBox "Patch01": matTag NSIJ NSJK Iy Iz Jy Jz Ky Kz Ly Lz
patch quad 4 3 3 +3.380000E+000 +3.500000E+000 +3.380000E+000 -3.500000E+000 +3.500000E+000 -3.500000E+000 +3.500000E+000 +3.500000E+000
patch quad 4 3 3 -3.380000E+000 +3.500000E+000 -3.380000E+000 +3.380000E+000 +3.380000E+000 +3.380000E+000 +3.380000E+000 +3.500000E+000
patch quad 4 3 3 -3.380000E+000 -3.380000E+000 -3.380000E+000 -3.500000E+000 +3.380000E+000 -3.500000E+000 +3.380000E+000 -3.380000E+000
patch quad 4 3 3 -3.500000E+000 +3.500000E+000 -3.500000E+000 -3.500000E+000 -3.380000E+000 -3.500000E+000 -3.380000E+000 +3.500000E+000

#Fiber "Sectionmix": y z A matTag
fiber +0.000000E+000 +0.000000E+000 +0.000000E+000 4
}



# GeoTran.tcl


# GeoTran type tag
geomTransf Corotational 1


# Elements.tcl


# Element "Elementmix": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 2 4 3 5 4 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 4 3 7 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 5 7 8 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 6 3 5 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 7 2 3 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 8 4 6 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 9 4 1 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008



# TimeSeries.tcl


# TimeSeries "TimeSeriesdis": dt filePath cFactor
set TimeSeriesdis "Series -dt +5.000000E-003 -filePath TimeSeriesdis.thf -factor +5.000000E-003"

# LoadPattern_1.tcl


# LoadPattern "LoadPatterndis": patternTag TimeSeries
pattern Plain 1 $TimeSeriesdis {


# SP nodeTag dofTag DispValue
sp 8 1 +1.000000E+000


}


# Analysis_1_Recorder.tcl


# Node Recorder "Recordernod2": fileName <nodeTag> dof respType
recorder Node -file AnalysisCase01_Node_Recordernod2_RFrc.out -time -node 2 -dof 1 reaction


# Node Recorder "Recordernod8": fileName <nodeTag> dof respType
recorder Node -file AnalysisCase01_Node_Recordernod8_Dsp.out -time -node 8 -dof 1 disp
# Node Recorder "Recordernod5": fileName <nodeTag> dof respType
recorder Node -file AnalysisCase01_Node_Recordernod5_RFrc.out -time -node 5 -dof 1 reaction
# Node Recorder "Recordernod4": fileName <nodeTag> dof respType
recorder Node -file AnalysisCase01_Node_Recordernod4_Dsp.out -time -node 4 -dof 1 disp

# AnalysisOptn_1.tcl


# AnalysisOptn "Analysis static cyclic": Type: Static

# ---------------------------------------------------

# Constraint Handler
constraints Transformation

# Convergence Test
test EnergyIncr +1.000000E-006 25 0 2

# Integrator
integrator LoadControl +5.000000E-003

# Solution Algorithm
algorithm Newton

# DOF Numberer
numberer RCM

# System of Equations
system BandGeneral

# Analysis Type
analysis Static


analyze 4200


# Clean up

# --------
wipe
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

my e-mail is vesna AT berkeley DOT edu
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

If I understood well, the element you call gap element is element that
works only in compression. When the element is in tension it is inactive.

I modified your material to be elasto-plastic, compression only. I also
replaced element 2 with a truss element. Look at the results to see if
this is what you wanted.

Here is the Material.tcl

# Materials.tcl

# Material "Materialst": matTag Fy E b a1 a2 a3 a4
uniaxialMaterial Steel01 1 +2.400000E+003 +2.100000E+006 +5.000000E-002 +0.000000E+000 +1.000000E+000 +0.000000E+000 +1.000000E+000

# Material "Materialminesgap": matTag E Fy gap
uniaxialMaterial ElasticPPGap 4 2.100000E+006 -2.400000E+003 0.0

And here is Elements.tcl

# Elements.tcl

# Element "Elementmix": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
#element nonlinearBeamColumn 2 4 3 5 4 1 -mass +0.000000E+000 -iter 10 +1.000000E-008
set barArea 3.3024
element truss 2 4 3 $barArea 4

# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 4 3 7 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 5 7 8 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 6 3 5 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 7 2 3 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 8 4 6 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008


# Element "Elementst": eleTag NodeI NodeJ NIP secTag GeoTranTag Mass MaxIters Tol
element nonlinearBeamColumn 9 4 1 5 2 1 -mass +0.000000E+000 -iter 10 +1.000000E-008
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

Thanks very much for your help
This is exactly behavior that I want. :D
but I have one big problem. :!:
as I said in pdf file I want to draw hysteresis curve .It means hysteresis loop .but the behavior of my model is linear. I don't see any loop in my hysteresis curve .I think
It is related to use load control .I tried it with displacement control but I had convergence error too.
Is there any way that I draw hysteresis loop :?:
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

what are you plotting? when I ran it I saw a hysteresis loop.
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

:!: :!: :!:
with my displacement?
I summed reactions of node 5 6 1 2 =(p)
displacement of node 8= (delta).
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

It looks like the displacements you are applying are not big enough to bring your system in the nonlinear range. I would suggest you to also plot disp. at node 4 vs force in element 2.
songhaohit
Posts: 3
Joined: Wed Dec 22, 2010 4:03 pm

Re: gap material

Post by songhaohit »

civilso wrote:
> HI EVERY BODY
> I use gap material in my model (element 3)but unfortunately i face an error with this
> feature:
> "force beam column2d::update- failed to get compatible element forces and
> deformation for element:3<dw:<<0.000123869>." :!:
> my model's analysis is static and loading is cyclic
> i don't know how can i solve this error :?:

hi civilso:
I have the same qusetion what you have met ,would you please post your email to me that I can send you the model I have built .my email is songhao_2@126.com
thank you
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

HI vesna
as i tried every displacement ,my model was in linear rang and when the displacement increased from special displacement ,i had error .i think i made mistake in my model(analysis options and time series).
would you please post your model (my model that you modified) and your displacement (when you are plotting ,you saw a hysteresis loop) to my email
then i have one question
do we always use gap material with truss element ?(specialy for these below situations)
1.if i change (SPConstraint.tcl )
# SPC tag Dx Dy Rz
fix 1 1 1 0
fix 2 1 1 0
fix 5 1 1 0
fix 6 1 1 0
fix 8 0 1 0
to
# SPC tag Dx Dy Rz
fix 1 1 1 1
fix 2 1 1 1
fix 5 1 1 1
fix 6 1 1 1
fix 8 0 1 0
and
2-if i change loading
(static cycling loading )
to
(load 8 0 -25 0
-25 is in side of dof2
and timeseries linear).

thanks alot for all your helps. :D
civilso
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

HI vesna
as i tried every displacement ,my model was in linear rang and when the displacement increased from special displacement ,i had convergence error .
would you please post your model (my model that you modified) and your displacement (when you are plotting ,you saw a hysteresis loop) to my email .
then i have one question
do we always use gap material with truss element ?(specialy for these below situations)
1.if i change (SPConstraint.tcl )
# SPC tag Dx Dy Rz
fix 1 1 1 0
fix 2 1 1 0
fix 5 1 1 0
fix 6 1 1 0
fix 8 0 1 0
to
# SPC tag Dx Dy Rz
fix 1 1 1 1
fix 2 1 1 1
fix 5 1 1 1
fix 6 1 1 1
fix 8 0 1 0
and
2-if i change loading
(static cycling loading )
to
(load 8 0 -25 0
-25 is in side of dof2
and timeseries linear).

thanks alot for all your helps.
civilso
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

For gap element you can either use truss or zeroLength element regardless of the boundary conditions and the type of load.

I lost your files, but here is an example which demonstrates that gap element works with sp load pattern and load control integrator:
model Basic -ndm 2 -ndf 3
node 1 0 -10
node 2 0 0
node 3 0 10
node 4 1 -10
node 5 1 0
node 6 1 10
node 7 10 0

fix 1 1 1 1
fix 3 1 1 1
fix 4 1 1 1
fix 6 1 1 1
fix 7 0 1 1

set A 10.0
set E 30000.0
set Iz 1100.0
geomTransf Linear 1
element elasticBeamColumn 1 1 2 $A $E $Iz 1
element elasticBeamColumn 2 2 3 $A $E $Iz 1
element elasticBeamColumn 3 4 5 $A $E $Iz 1
element elasticBeamColumn 4 5 6 $A $E $Iz 1
element elasticBeamColumn 5 5 7 $A $E $Iz 1

set At 1.0
set Et 3000e5
set Fy 2400
uniaxialMaterial ElasticPPGap 1 $Et $Fy 0.0
element truss 6 2 5 $At 1

timeSeries Path 1 -dt 1.0 -values {0.0 1.0}
pattern Plain 1 1 {
sp 7 1 1.0
}

constraints Transformation
integrator LoadControl 0.1
analysis Static
for {set i 1} {$i < 5} {incr i 1} {
analyze 1
print node 2 5 7
print ele 6
}

If your code is still not working I suggest you to write a tcl script yourself and run it with opensees instead of opensees navigator.
civilso
Posts: 35
Joined: Mon Oct 25, 2010 1:37 pm
Location: mohaghegh ardabili university

Re: gap material

Post by civilso »

yes. i saw.but your model is diffrent from my model.
you use elasticBeamColumn but i use nonlinear.your loading is diffrent from my loading.your geo trans is linear but mine is corotational for beam and brace and pdelta for column.
would you please refine my attached file .if it's possible both displacement integrator(dis) and load integrator (load)either(i wrote them with tcl )
i should use displacement control because of buckling behavior.
excuse me .i try to ask a few question :wink:
sona
vesna
Posts: 3033
Joined: Tue May 23, 2006 11:23 am
Location: UC Berkeley

Re: gap material

Post by vesna »

With this example I wanted to demonstrate on a structure similar to yours and by using sp command and load control that you will see the gap element entering the nonlinear range. All the differences you mentioned between your model and my model are secondary. Now, you have something to start with and you can refine it to match your needs. In case you have a material with a kink (ElasticPPGap) you can not use load command to apply the load as it will not be able to get you into nonlinear range for that material because of the kink.
Post Reply