SDOF with a dashpot

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

Moderators: silvia, selimgunay, Moderators

Post Reply
Gholamreza
Posts: 84
Joined: Tue Nov 07, 2017 7:47 am
Location: University of Central Florida

SDOF with a dashpot

Post by Gholamreza »

Hello Engineers,
I have a very simple question that gets on my nerve: I want to model a SDOF structure with a dashpot (viscous material) and compare the response with MATLAB but I think I am making a mistake somewhere. Here is the code:

########################################################################################################################
wipe all
model BasicBuilder -ndm 2 -ndf 3
file mkdir Data;

#NODES
node 1 0.0 0.0;
node 2 0.0 3.0;
node 3 0.0 3.0;

fix 1 1 1 1;
fix 2 0 1 1;
fix 3 0 1 1;

####################################### Define Elastic and Viscous Material #######################################

#Elastic Material
#uniaxialMaterial Elastic $matTag $E <$eta> <$Eneg>
set matTag_E 1
set Es [expr 206e6]
uniaxialMaterial Elastic $matTag_E $Es

#Viscous Material
#uniaxialMaterial Viscous $matTag $C $alpha
set matTag_V 2
set Cv [expr 1000]
uniaxialMaterial Viscous $matTag_V $Cv 1

####################################### Define Geometric Transformation #######################################

set TransfTag 1;
geomTransf Linear $TransfTag ;

####################################### Define Elements #######################################

element twoNodeLink 1 1 2 -mat $matTag_E -dir 2;
element zeroLength 2 2 3 -mat $matTag_V -dir 1;

####################################### Assign mass #######################################

set mSDOF 100;
mass 2 [expr $mSDOF] 0. 0.;

####################################### Frequencies #######################################
set lambda [eigen -fullGenLapack 1]
set omega {}
set f {}
set T {}

foreach lam $lambda {
lappend omega [expr sqrt($lam)]
lappend f [expr sqrt($lam)/(2*$PI)]
lappend T [expr (2*$PI)/sqrt($lam)]
}

puts "T_s = $T sec"
puts "w_s = $omega rad/sec"
puts "f_s = $f Hz"

####################################### Analysis Parameters (STATIC) #######################################
constraints Plain;
numberer RCM;
system UmfPack;
set Tol 1.0e-5;
test NormDispIncr $Tol 10 ;
algorithm KrylovNewton;
set NstepGravity 10;
set DGravity [expr 1./$NstepGravity];
integrator LoadControl $DGravity;
analysis Static;
analyze $NstepGravity;
########################################################################################################################
loadConst -time 0.0
########################################################################################################################
recorder Node -file Data/DISP_MRF.out -time -node 2 -dof 1 disp; # DISP
recorder Node -file Data/VEL_MRF.out -time -node 2 -dof 1 vel; # VEL
recorder Node -file Data/ACCEL_MRF.out -time -node 2 -dof 1 accel; # ACCEL
recorder Node -file Data/FxSD_MRF.out -time -node 3 -dof 1 reaction; # Force
recorder Node -file Data/Fx_MRF.out -time -node 1 -dof 1 reaction; # Base shear
########################################################################################################################

when I do Transient analysis, my results are totally different from MATLAB....I appreciate it if anyone tells me what is wring with code and how I can model a SDOF with dashpot?
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: SDOF with a dashpot

Post by selimgunay »

If your viscous material has a linear force-velocity relation, i.e. f=Cv, you can just use mass proportional damping
Gholamreza
Posts: 84
Joined: Tue Nov 07, 2017 7:47 am
Location: University of Central Florida

Re: SDOF with a dashpot

Post by Gholamreza »

thank you selimgunay. this works. Why do I get different response when I put have nonlinear material there?
selimgunay
Posts: 916
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: SDOF with a dashpot

Post by selimgunay »

Are you modeling the nonlinear dashpot in Matlab? If you are not, the difference could be because of that
Post Reply