WARNING GroundMotion

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

Moderators: silvia, selimgunay, Moderators

Post Reply
alimohammadian
Posts: 16
Joined: Sun Jan 17, 2016 12:35 pm

WARNING GroundMotion

Post by alimohammadian »

I am contacting you for the following reason.

I tried to model a column of soil (one layer) and checked it under earthquake loads but I saw the following error

WARNING: GroundMotion::getDisp(double time) - integration is required to get the ground displacements from the ground velocities

I would be grateful if you guide me. (I attached model file).





wipe


#---GROUND MOTION PARAMETERS
# time step in ground motion record
set motionDT 0.005
# number of steps in ground motion record
set motionSteps 7990




set codename [open data/data.txt w+]

#---SOIL GEOMETRY
set len 200.0 ;
set h1 10.0;
set dimv1 2.0 ;
set dimh 0.5;
set rho 1.5;
set Vs 350;
set nu 0.3;

set Gs [expr $rho*$Vs*$Vs]
set E [expr ((1-$nu)/(1-2*$nu))*2*$Gs]
set bulk [expr $E/(3*(1-2*$nu))]
set Vp [expr sqrt($E/$rho)]

# soil cohesion (kPa)
set cohesion 95.0
# peak shear strain
set gammaPeak 0.1
# soil friction angle
set phi 0.0
# reference pressure
set refPress 80.0
# pressure dependency coefficient
set pressCoeff 0.0

model BasicBuilder -ndm 2 -ndf 2
#### CREATE LAGRANGE MULTIPLIER NODES FOR BEAM CONTACT ELEMENTS

# 6. DEFINE SOIL MATERIALS

nDMaterial PressureIndependMultiYield 555 2 $rho $Gs $bulk $cohesion $gammaPeak \
$phi $refPress $pressCoeff -16\
1.00e-6 1.000 2.00e-6 1.000 5.00e-6 0.996 \
1.00e-5 0.984 2.00e-5 0.975 5.00e-5 0.922 \
1.00e-4 0.850 2.00e-4 0.734 5.00e-4 0.532 \
1.00e-3 0.367 2.00e-3 0.224 5.00e-3 0.139 \
1.00e-2 0.085 2.00e-2 0.051 5.00e-2 0.027 \
1.00e-1 0.021


#build node layer1
set count 0;
for {set j 1} {$j<=[expr ($h1/$dimv1)+1]} {incr j 1} {
set count [expr $j-1]
for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {
node [expr (int(100000+$i+($j-1)*(($len/$dimh)+1)))] [expr ((-$len/2)+($i-1)*$dimh)] [expr (0+$count*$dimv1)] -mass 0 0

}
};

for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {

fix [expr 100000+$i] 1 1
}

#for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {
#equalDOF [expr 100000+$i] [expr 100000+$i+1] 1
#}

# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($h1/$dimv1)]} {incr j 1} {
for {set k 1} {$k <= [expr ($len/$dimh)]} {incr k 1} {
set node1 [expr int(100000+$k+$j*($len/$dimh+1))]
set node2 [expr int(100000+$k+1+$j*($len/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}

# . DEFINE SOIL ELEMENTS

set wgtY [expr -9.81*$rho]
set wgtX 0.0
set quadtic 1.0

#layer 1 element
for {set j 1} {$j<=[expr $h1/$dimv1]} {incr j 1} {
for {set i 1} {$i<=[expr ($len/$dimh)]} {incr i 1} {
set nI [expr int(100000+$i+($j-1)*(($len/$dimh)+1))]
set nJ [expr int(100000+1+$i+($j-1)*(($len/$dimh)+1))]
set nK [expr int(100000+($len/$dimh)+2+$i+($j-1)*(($len/$dimh)+1))]
set nL [expr int(100000+($len/$dimh)+1+$i+($j-1)*(($len/$dimh)+1))]

element quad [expr int($i+100000+($j-1)*($len/$dimh))] $nI $nJ $nK $nL $quadtic "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY

puts $codename " [expr int($i+100000+($j-1)*($len/$dimh))] $nI $nL $nK $nJ "


}
};

puts "Finished creating all -ndf 2 nodes..."

puts " first eigen value is [eigen 1]"
puts "first mode period is [expr 2*3.1415/pow([eigen 1],0.5)]"

#---RAYLEIGH DAMPING PARAMETERS
set pi 3.141592654
# damping ratio
set damp 0.02
# lower frequency
set omega1 [expr 2*$pi*0.2]
# upper frequency
set omega2 [expr 2*$pi*20]
# damping coefficients
set a0 [expr 2*$damp*$omega1*$omega2/($omega1 + $omega2)]
set a1 [expr 2*$damp/($omega1 + $omega2)]
puts "damping coefficients: a_0 = $a0; a_1 = $a1"

#---ANALYSIS PARAMETERS
# Newmark parameters
set gamma 0.5
set beta 0.25

constraints Transformation
test NormDispIncr 1e-5 30 1
algorithm Newton
numberer RCM
system ProfileSPD
integrator Newmark $gamma $beta
analysis Transient

analyze 10 5.0e2

puts "Finished with elastic gravity analysis..."

# update materials to consider plastic behavior
updateMaterialStage -material 555 -stage 1

# plastic gravity loading
analyze 40 5.0e2
setTime 0.0
wipeAnalysis

rayleigh $a0 $a1 0.0 0.0

timeSeries Path 1 -dt 0.02 -filePath TabasLN(dt=0.02)PGA=0.4g.txt -factor 9.81

pattern MultipleSupport 22 {
groundMotion 1 Plain -accel 1
for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {
imposedMotion [expr 100000+$i] 1 1
}
}


set dt 0.01
puts "groundmotion start"

numberer RCM
system ProfileSPD
test NormDispIncr 1.e-8 6
constraints Penalty 1.e18 1.e20
algorithm KrylovNewton
integrator Newmark 0.5 0.25
analysis Transient
analyze [expr int(32.82/$dt)] $dt

puts "groundmotion done!.End Time: [getTime]"

puts "Finished with dynamic analysis..."

puts " ######*****DONE*****##### "
skamalzare
Posts: 112
Joined: Thu Jun 27, 2013 11:45 am
Location: Seattle, WA

Re: WARNING GroundMotion

Post by skamalzare »

Hi,

When you use MultipleSupport command with accelerations as input, OpenSees numerically integrates the accelerations to get displacements and velocities. By default, it uses the trapezoid integration method. This integration method will not provide good results. Therefore, a warning will be issued to notify you! To avoid this, you can properly integrate your accelerations to displacements outside of OpenSees and then input these displacements to OpenSees.

Personally, I prefer to input accelerations directly to the computation system by using UniformExcitation command. Based on your explanation, I think, this latter approach serves you the best, specially if you have rock at your base.

Bests,
Soheil Kamalzare
---
PhD, EIT, Geotechnical Engineer
Condon-Johnson & Associates INC
alimohammadian
Posts: 16
Joined: Sun Jan 17, 2016 12:35 pm

Re: WARNING GroundMotion

Post by alimohammadian »

Dear Kamalzare

I use UniformExcitation command but opensees cannot solve problem.)Error that is not convergent(
I put code in the following.





--------------------------------------------------------------------------------------------

wipe


#---GROUND MOTION PARAMETERS
# time step in ground motion record
set motionDT 0.005
# number of steps in ground motion record
set motionSteps 7990

set dt 0.02





#---SOIL GEOMETRY
set nssh 3; ##### number of same column section in height
set h4 4;
set numst 9; ## number of story
set bay 3.0;
set underf 3.0;
set underh 3.5 ;
set len 200.0 ;
set h1 10.0;
set h2 10.0;
set h3 15.0;
set bs 18.0 ;
set fw 2.0;
set df [expr ($underf*$underh)] ;
set dimv1 2.0 ;
set dimv2 1.0 ;
set dimv3 0.5 ;
set dimh 0.5;
set rho 1.5;
set Vs 350;
set nu 0.3;

set Gs [expr $rho*$Vs*$Vs]
set E [expr ((1-$nu)/(1-2*$nu))*2*$Gs]
set bulk [expr $E/(3*(1-2*$nu))]
set Vp [expr sqrt($E/$rho)]


# bedrock shear wave velocity (m/s)
set rockVS 1500.0
# bedrock mass density (Mg/m^3)
set rockDen 2.396
set sizeEleX $dimh


# soil cohesion (kPa)
set cohesion 95.0
# peak shear strain
set gammaPeak 0.1
# soil friction angle
set phi 0.0
# reference pressure
set refPress 80.0
# pressure dependency coefficient
set pressCoeff 0.0






model BasicBuilder -ndm 2 -ndf 2


#### CREATE LAGRANGE MULTIPLIER NODES FOR BEAM CONTACT ELEMENTS
#-----------------------------------------------------------------------------------------


#************************************************************************************
# 6. DEFINE SOIL MATERIALS

nDMaterial PressureIndependMultiYield 555 2 $rho $Gs $bulk $cohesion $gammaPeak \
$phi $refPress $pressCoeff -16\
1.00e-6 1.000 2.00e-6 1.000 5.00e-6 0.996 \
1.00e-5 0.984 2.00e-5 0.975 5.00e-5 0.922 \
1.00e-4 0.850 2.00e-4 0.734 5.00e-4 0.532 \
1.00e-3 0.367 2.00e-3 0.224 5.00e-3 0.139 \
1.00e-2 0.085 2.00e-2 0.051 5.00e-2 0.027 \
1.00e-1 0.021



nDMaterial ElasticIsotropic 666 2e15 0.0






#build node layer1
set count 0;
for {set j 1} {$j<=[expr ($h1/$dimv1)+1]} {incr j 1} {
set count [expr $j-1]
for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {
node [expr (int(100000+$i+($j-1)*(($len/$dimh)+1)))] [expr ((-$len/2)+($i-1)*$dimh)] [expr (0+$count*$dimv1)]
}
};



for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {

fix [expr 100000+$i] 1 1
}






# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($h1/$dimv1)]} {incr j 1} {
for {set k 1} {$k <= [expr ($len/$dimh)]} {incr k 1} {
set node1 [expr int(100000+$k+$j*($len/$dimh+1))]
set node2 [expr int(100000+$k+1+$j*($len/$dimh+1))]
equalDOF $node1 $node2 1 2
}
}



# . DEFINE SOIL ELEMENTS

set wgtY [expr -9.81*$rho]
set wgtX [expr -9.81*$rho]

set quadtic 10.0


#layer 1 element
for {set j 1} {$j<=[expr $h1/$dimv1]} {incr j 1} {
for {set i 1} {$i<=[expr ($len/$dimh)]} {incr i 1} {
set nI [expr int(100000+$i+($j-1)*(($len/$dimh)+1))]
set nJ [expr int(100000+1+$i+($j-1)*(($len/$dimh)+1))]
set nK [expr int(100000+($len/$dimh)+2+$i+($j-1)*(($len/$dimh)+1))]
set nL [expr int(100000+($len/$dimh)+1+$i+($j-1)*(($len/$dimh)+1))]

element quad [expr int($i+100000+($j-1)*($len/$dimh))] $nI $nJ $nK $nL $quadtic "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY
}
};









#build node layer2

set count 0;
for {set j 1} {$j<=[expr ($h2/$dimv2)+1]} {incr j 1} {
set count [expr $j-1]
for {set i 1} {$i<=[expr ($len/$dimh)+1]} {incr i 1} {
node [expr (int(200000+$i+($j-1)*(($len/$dimh)+1)))] [expr ((-$len/2)+($i-1)*$dimh)] [expr ($h1+$count*$dimv2)]

}
};

# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($h2/$dimv2+1)]} {incr j 1} {
for {set k 1} {$k <= [expr ($len/$dimh)]} {incr k 1} {
set node1 [expr int(200000+$k+($j-1)*($len/$dimh+1))]
set node2 [expr int(200000+$k+1+($j-1)*($len/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}




#layer 2 element
for {set j 1} {$j<=[expr $h2/$dimv2]} {incr j 1} {
for {set i 1} {$i<=[expr ($len/$dimh)]} {incr i 1} {

set nI [expr int(200000+$i+($j-1)*(($len/$dimh)+1))]
set nJ [expr int(200000+1+$i+($j-1)*(($len/$dimh)+1))]
set nK [expr int(200000+($len/$dimh)+2+$i+($j-1)*(($len/$dimh)+1))]
set nL [expr int(200000+($len/$dimh)+1+$i+($j-1)*(($len/$dimh)+1))]

element quad [expr int($i+200000+($j-1)*($len/$dimh))] $nI $nJ $nK $nL 1.0 "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY

}
};



##bound layer1 and layer2
set fpel [expr ($len/$dimh+1)*($h1/$dimv1+1)-($len/$dimh)] ;
for {set k 1} {$k<=(($len/$dimh)+1)} {incr k 1} {
equalDOF [expr int(100000+$fpel-1+$k)] [expr int(200000+$k)] 1 2
};




#build node layer3

set count 0;
for {set j 1} {$j<=[expr ($h3/$dimv3)+1]} {incr j 1} {
set count [expr $j-1]
for {set i 1} {$i<=[expr ((($len/2)-($bs/2))/$dimh)+1]} {incr i 1} {
node [expr int(300000+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))] [expr ((-$len/2)+($i-1)*$dimh)] [expr ($h1+$h2+$count*$dimv3)]

}
};




# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($h3/$dimv3+1)]} {incr j 1} {
for {set k 1} {$k <= [expr ((($len/2)-($bs/2))/$dimh)]} {incr k 1} {

set node1 [expr int(300000+$k+($j-1)*((($len/2)-($bs/2))/$dimh+1))]
set node2 [expr int(300000+$k+1+($j-1)*((($len/2)-($bs/2))/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}



#layer 3 element
for {set j 1} {$j<=[expr $h3/$dimv3]} {incr j 1} {

for {set i 1} {$i<=[expr ((($len/2)-($bs/2))/$dimh)]} {incr i 1} {
set nI [expr int(300000+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nJ [expr int(300000+1+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nK [expr int(300000+((($len/2)-($bs/2))/$dimh)+2+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nL [expr int(300000+((($len/2)-($bs/2))/$dimh)+1+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]

element quad [expr int($i+300000+($j-1)*((($len/2)-($bs/2))/$dimh))] $nI $nJ $nK $nL 1.0 "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY

}
};



##bound layer2 and layer3
set fpel [expr ($len/$dimh+1)*($h2/$dimv2+1)-($len/$dimh)] ;

for {set k 1} {$k<=(((($len/2)-($bs/2))/$dimh)+1)} {incr k 1} {
equalDOF [expr int(200000+$fpel-1+$k)] [expr int(300000+$k)] 1 2
};





#build node layer5

set count 0;
for {set j 1} {$j<=[expr ($h3/$dimv3)+1]} {incr j 1} {
set count [expr $j-1]

for {set i 1} {$i<=[expr ((($len/2)-($bs/2))/$dimh)+1]} {incr i 1} {

node [expr int(500000+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))] [expr (($bs/2)+($i-1)*$dimh)] [expr ($h1+$h2+$count*$dimv3)]

}
};


# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($h3/$dimv3+1)]} {incr j 1} {
for {set k 1} {$k <= [expr ((($len/2)-($bs/2))/$dimh)]} {incr k 1} {

set node1 [expr int(500000+$k+($j-1)*((($len/2)-($bs/2))/$dimh+1))]
set node2 [expr int(500000+$k+1+($j-1)*((($len/2)-($bs/2))/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}



#layer 5 element
for {set j 1} {$j<=[expr $h3/$dimv3]} {incr j 1} {

for {set i 1} {$i<=[expr ((($len/2)-($bs/2))/$dimh)]} {incr i 1} {
set nI [expr int(500000+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nJ [expr int(500000+1+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nK [expr int(500000+((($len/2)-($bs/2))/$dimh)+2+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
set nL [expr int(500000+((($len/2)-($bs/2))/$dimh)+1+$i+($j-1)*(((($len/2)-($bs/2))/$dimh)+1))]
element quad [expr int($i+500000+($j-1)*((($len/2)-($bs/2))/$dimh))] $nI $nJ $nK $nL 1.0 "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY

}
};



##bound layer2 and layer5

set fpel [expr ($len/$dimh+1)*($h2/$dimv2+1)-(($len/2-$bs/2)/$dimh)];
for {set k 1} {$k<=(((($len/2)-($bs/2))/$dimh)+1)} {incr k 1} {
equalDOF [expr int(200000+$fpel-1+$k)] [expr int(500000+($k))] 1 2
};






#build node layer4
set count 0;
for {set j 1} {$j<=[expr (($h3-$df-$fw)/$dimv3)+1]} {incr j 1} {
set count [expr $j-1]

for {set i 1} {$i<=[expr (($bs)/$dimh)+1]} {incr i 1} {

node [expr (int(400000+$i+($j-1)*((($bs)/$dimh)+1)))] [expr ((-($bs)/2)+($i-1)*$dimh)] [expr ($h1+$h2+$count*$dimv3)]

}
};



# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr (($h3-$df-$fw)/$dimv3)+1]} {incr j 1} {
for {set k 1} {$k <= [expr (($bs)/$dimh)]} {incr k 1} {

set node1 [expr int(400000+$k+($j-1)*(($bs)/$dimh+1))]
set node2 [expr int(400000+$k+1+($j-1)*(($bs)/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}


#layer 4 element
for {set j 1} {$j<=[expr ($h3-$df-$fw)/$dimv3]} {incr j 1} {

for {set i 1} {$i<=[expr (($bs)/$dimh)]} {incr i 1} {
set nI [expr int(400000+$i+($j-1)*(($bs)/$dimh+1))]
set nJ [expr int(400000+1+$i+($j-1)*(($bs)/$dimh+1))]
set nK [expr int(400000+(($bs)/$dimh)+2+$i+($j-1)*(($bs)/$dimh+1))]
set nL [expr int(400000+(($bs)/$dimh)+1+$i+($j-1)*(($bs)/$dimh+1))]

element quad [expr int($i+400000+($j-1)*(($bs)/$dimh))] $nI $nJ $nK $nL 1.0 "PlaneStrain" 555 0.0 0.0 $wgtX $wgtY

}
};



##bound layer2 and layer4

set fpel [expr ($len/$dimh+1)*($h2/$dimv2+1)-(($len/2+$bs/2)/$dimh)];

for {set k 1} {$k<=(($bs)/$dimh+1)} {incr k 1} {
equalDOF [expr int(400000+$k)] [expr int(200000+$fpel-1+$k)] 1 2

};


##bound layer3 and layer4

set fpel [expr (($len/2-$bs/2)/$dimh)+1];
for {set k 1} {$k<=((($h3-$df-$fw)/$dimv3)+1)} {incr k 1} {
####+1
equalDOF [expr int(400001+($k-1)*((($bs)/$dimh)+1))] [expr int(300000+$fpel+($k-1)*((($len/2-$bs/2)/$dimh)+1))] 1 2

};


##bound layer4 and layer5

set fpel [expr ($bs)/$dimh];
for {set k 1} {$k<=((($h3-$df-$fw)/$dimv3)+1)} {incr k 1} {

equalDOF [expr int(400001+$fpel+($k-1)*((($bs)/$dimh)+1))] [expr int(500001+($k-1)*((($len/2-$bs/2)/$dimh)+1))] 1 2

};




#build node layer6
set count 0;
for {set j 1} {$j<=[expr ($fw/$dimv3)+1]} {incr j 1} {
set count [expr $j-1]

for {set i 1} {$i<=[expr (($bs)/$dimh)+1]} {incr i 1} {
node [expr (int(600000+$i+($j-1)*((($bs)/$dimh)+1)))] [expr ((-($bs)/2)+($i-1)*$dimh)] [expr ($h1+$h2+$h3-$df-$fw+$count*$dimv3)]

}
};


# define equal DOF for simple shear deformation of soil elements
for {set j 1} {$j<=[expr ($fw/$dimv3)+1]} {incr j 1} {
for {set k 1} {$k <= [expr (($bs)/$dimh)]} {incr k 1} {

set node1 [expr int(600000+$k+($j-1)*(($bs)/$dimh+1))]
set node2 [expr int(600000+$k+1+($j-1)*(($bs)/$dimh+1))]
equalDOF $node1 $node2 1 2

}
}






#layer 6 element
for {set j 1} {$j<=[expr ($fw)/$dimv3]} {incr j 1} {
for {set i 1} {$i<=[expr (($bs)/$dimh)]} {incr i 1} {
set nI [expr int(600000+$i+($j-1)*(($bs)/$dimh+1))]
set nJ [expr int(600000+1+$i+($j-1)*(($bs)/$dimh+1))]
set nK [expr int(600000+(($bs)/$dimh)+2+$i+($j-1)*(($bs)/$dimh+1))]
set nL [expr int(600000+(($bs)/$dimh)+1+$i+($j-1)*(($bs)/$dimh+1))]

element quad [expr int($i+600000+($j-1)*(($bs)/$dimh))] $nI $nJ $nK $nL 1.0 "PlaneStrain" 666 0.0 0.0 $wgtX $wgtY

}
};


##bound layer4 and layer6

set fpel [expr (($bs)/$dimh+1)*(($h3-$df-$fw)/$dimv3+1)-(($bs)/$dimh)];
for {set k 1} {$k<=(($bs)/$dimh+1)} {incr k 1} {
equalDOF [expr int(400000+$fpel+($k-1))] [expr int(600000+$k)] 1 2
};



##bound layer3 and layer6

set fpel [expr (($len/2-$bs/2)/$dimh+1)*(($h3-$df-$fw)/$dimv3+1)];
for {set k 1} {$k<=($fw/$dimv3+1)} {incr k 1} {

equalDOF [expr int(300000+$fpel+($k-1)*(($len/2-$bs/2)/$dimh+1))] [expr int(600001+($k-1)*(($bs)/$dimh+1))] 1 2
};


##bound layer5 and layer6

set fpel [expr (($len/2-$bs/2)/$dimh+1)*(($h3-$df-$fw)/$dimv3+1)-(($len/2-$bs/2)/$dimh)];
for {set k 1} {$k<=($fw/$dimv3+1)} {incr k 1} {

equalDOF [expr int(500000+$fpel+($k-1)*((($len/2)-($bs/2))/$dimh+1))] [expr int(600001+(($bs)/$dimh)+($k-1)*(($bs)/$dimh+1))] 1 2
};










puts "Finished creating all -ndf 2 nodes..."


puts " first eigen value is [eigen 1]"
puts "first mode period is [expr 2*3.1415/pow([eigen 1],0.5)]"



#---RAYLEIGH DAMPING PARAMETERS
set pi 3.141592654
# damping ratio
set damp 0.02
# lower frequency
set omega1 [expr 2*$pi*0.2]
# upper frequency
set omega2 [expr 2*$pi*20]
# damping coefficients
set a0 [expr 2*$damp*$omega1*$omega2/($omega1 + $omega2)]
set a1 [expr 2*$damp/($omega1 + $omega2)]
puts "damping coefficients: a_0 = $a0; a_1 = $a1"

#---ANALYSIS PARAMETERS
# Newmark parameters
set gamma 0.5
set beta 0.25








constraints Transformation
test NormDispIncr 1e-5 30 1
algorithm Newton
numberer RCM
system ProfileSPD
integrator Newmark $gamma $beta
analysis Transient

analyze 10 5.0e2

puts "Finished with elastic gravity analysis..."

# update materials to consider plastic behavior
updateMaterialStage -material 555 -stage 1


# plastic gravity loading
analyze 40 5.0e2



# reset time and analysis
setTime 0.0
wipeAnalysis







recorder Node -file node1disp2.txt -node 305673 -dof 1 disp

#rayleigh $a0 $a1 0.0 0.0





set accel "Series -dt 0.02 -filePath TabasLN(dt=0.02)PGA=0.4g.txt -factor 9.81"





pattern UniformExcitation 3 1 -accel $accel




puts "groundmotion start"

constraints Transformation
numberer Plain
system BandGeneral
test NormDispIncr 1.e-8 6
algorithm Newton
integrator Newmark 0.5 0.25
analysis Transient
analyze [expr int(32.82/$dt)] $dt

puts "groundmotion done!.End Time: [getTime]"




puts "Finished with dynamic analysis..."




puts " ######*****DONE*****##### "
alimohammadian
Posts: 16
Joined: Sun Jan 17, 2016 12:35 pm

Re: WARNING GroundMotion

Post by alimohammadian »

skamalzare
Posts: 112
Joined: Thu Jun 27, 2013 11:45 am
Location: Seattle, WA

Re: WARNING GroundMotion

Post by skamalzare »

Dear Ali,

Please simplify your model to only one element and see if it works. I had a quick look at your code and it seemed to me that there might be a problem in your boundary definitions.
Also, at this stage, it might be better if you could define your static and dynamic analyses with same properties.

Cheers,
SK
---
PhD, EIT, Geotechnical Engineer
Condon-Johnson & Associates INC
alimohammadian
Posts: 16
Joined: Sun Jan 17, 2016 12:35 pm

Re: WARNING GroundMotion

Post by alimohammadian »

Dear Kamalzare

Your letter was correct.
I picked up the dampers on both sides of soil and analysis was done properly.
I record the movement of a point on the Earth's surface and the highest value of movement was 0.5 meter .

but

can you help me how I model dampers?
please see the following pic :
http://www.axgig.com/images/99630609358316620235.png
http://8pic.ir/viewer.php?file=o51lg4kh4ccgbdqziy89.png

http://upload7.ir/u/preview/s1/RghndEPk.PNG
http://www.axgig.com/images/99630609358316620235.png

[URL=http://uupload.ir/viewer.php?file=t0qg_capture.png][IMG]http://uupload.ir/files/t0qg_capture_thumb.png[/IMG][/URL]
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Re: WARNING GroundMotion

Post by fmk »

the program is warning you that you have only specified the ground accelerations .. a multi-support problem requires ground displacements at the boundary nodes, OpenSees will do numerical integration (Trapezoidal Rule) to obtain the displacements from the vel from the accel using this numerical technique. Depending on the ground accel provided this may not be appropriate.
skamalzare
Posts: 112
Joined: Thu Jun 27, 2013 11:45 am
Location: Seattle, WA

Re: WARNING GroundMotion

Post by skamalzare »

Dear Ali,

If I have noticed you right, you intend to model an infinite soil column. In order to do that you need to install dampers at bottom of your model (or anywhere else where you have specified deformations, e.g. fixed boundaries) to absorb the outgoing waves. This prevents them to reflect back from these boundaries to the model. There is a good example in wiki which I encourage you to read:

http://opensees.berkeley.edu/wiki/index ... _Analysis)

Please be informed that to model an infinite soil column you need to specify the force time history at base. For this purpose, you can integrate your time history to velocities with a proper method, and input it by using MultiSupport command. I believe everything is thoroughly explained in above example.

The use of UniformExcitation command is only for cases where you have rigid base.
---
PhD, EIT, Geotechnical Engineer
Condon-Johnson & Associates INC
alimohammadian
Posts: 16
Joined: Sun Jan 17, 2016 12:35 pm

Re: WARNING GroundMotion

Post by alimohammadian »

Dear Kamalzare
I want to model soil with structure (in 2d) then I want to peruse displacement of soil and displacement of structure in same level ( Level of underground floors).
I already studied example mentioned (Site Response Analysis ). If we Releas the degrees of freedom of base, We faced the wrong answer for eigen.
Post Reply