MultipleSupport Pattern

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

Moderators: silvia, selimgunay, Moderators

Post Reply
mariantonietta2
Posts: 7
Joined: Tue Feb 16, 2010 2:40 am
Location: AIT

MultipleSupport Pattern

Post by mariantonietta2 »

Dear Frank Mc Kenna,

I implemented a code with a "MultipleSupport Pattern" using a acceleration series to define the "groundMotion". I did not specified the integrator in "groundMotion". I applied the excitation to a free node (last node) of my cantilever beam because the "groundMotion" the I defined model a wind action on my beam.
Opensees gave me an error

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

but it produced anyway results.

I would understand why it is necessary an integrator for the excitation series, and if it possible to applied acceleration series to unconstrained nodes (as they should be white noise or wind action).

I read a topic of last year that said it is possible to model a wind action with a "pattern Plain", so I quite confused... the wind action is a dynamic load, so isn´t it necessary to use the "MultipleSupport Pattern"?
Help me to understand, please.


An another request: the only reference used to define "Analysis Objects" is the Cook´s book indicated in Opensees Manual bibliography?


Thank you in advance for your reply and your time.
M
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

the WARNING occurs because you provided an acceleration and not the displacement record. integration is done using the trapezoidal method to obtain the vel and then the displacements. It is these integrated displacements that are then set as the nodal displacements at the start of each new analysis step by the Multi-Support excitation.

wind loads are normally applied using nodal forces that vary over the height of the building and vary with time. A Plain load pattern composed of nodal loads and associated with a Path Timeseries defining how these loads vary with time would be a good way to model such a problem.

As for a reference for the analysis part of OpenSees. A wiki is ccoming which will have references and possibly sme theory for each option. There is no 1 book that will have everything as a lot of the integration schemes, solvers, and some solution algorithms can only be found in journal articles. The cook book does have a lot of the basic methods covered (e.g. Newton Raphson, Newmark, and the constraint handlers) which is why it is there in the references.

If you want to see how all the different components work together you have to look at chapter 3 in my dissertation. and there is also a recent paper you can look at

F. McKenna, M.H. Scott , and G.L.Fenves. "Nonlinear Finite Element Analysis Software Architecture Using Object Composition", Journal of Computing in Civil Engineering, 24(1), January 2010.
mariantonietta2
Posts: 7
Joined: Tue Feb 16, 2010 2:40 am
Location: AIT

Post by mariantonietta2 »

Dear Frank Mc Kenna,

I´m sorry, but I need again your help.

There are not examples about the "Plain load pattern" associated with a "Path Timeseries", so I tried to implement the procedure that you described, but without any success: where exactly I must insert the "series" command?
I wrote:

set WN "Series -dt $dt -filePath WN.txt"

#Define Load Pattern
pattern Plain 2 "Path" {

load 1 0.0 [expr $WN*$m1] 0.0

}

where in WN.txt file the data are the accelerations which I would applied to the node 1, "m1" is the nodal mass of node 1 and "dt" is the time interval of measurement of acceleration.

A second question .... this one is a Static analysis.... is it correct to use this analysis to find a dynamic solution of the beam excited by a dynamic load as a wind load or a white noise? And the steps of analysis ("analyze $Nsteps - manual page 371) will be the number of acceleration data in the loaded file? (naturally with a "integrator loadControl").
This analysis must be after the static one where the real static load are applied?
Implicitly I asked you if I could applied a white noise to my beam in the same way.

Thank you for your time
M
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

no .. m1*whatever the factor is in WN is done by the load pattern .. the loads are just reference loads, the time series provides the factor by which the reference loads are multiplied before they are applied to the nodes.

try this instead:
[code]

timeSeries Path 1 -dt $dt -filePath WN.txt

#Define Load Pattern
pattern Plain 2 1 {
load 1 0.0 $m1 0.0
}

[/code]

and it's not a static analysis .. you are just defining a load pattern .. you can do a static or traabient analysis with the load pattern, it's up to you.[/code]
mariantonietta2
Posts: 7
Joined: Tue Feb 16, 2010 2:40 am
Location: AIT

Post by mariantonietta2 »

Dear Frank Mc Kenna,

I´m really sorry, but I must ask you again something because my code does not work.

I tried to use the command suggested by you yesterday, but "timeSeries Path" does not work. So I put the time series inside the pattern Plain command and Opensees did not give me any error now



#Define Load Pattern
pattern Plain 2 "Series -dt $dt -filePath WN.txt" {
load 1 0.0 $m1 0.0
}


Now my problem is that in the Transient analysis Opensees records only the static displacement for all times of the time series.


loadConst -time 0.0;


# Definition of parameters for dynamic analysis


#Define Load Pattern
pattern Plain 2 "Series -dt $dt -filePath WN.txt" {
load 1 0.0 $m1 0.0 0.0 0.0 0.0
}



## Damping parameters

set lambda [eigen 5] ;
set lambda1 [lindex $lambda 0]
set lambda2 [lindex $lambda 1]
set lambda3 [lindex $lambda 2]
set lambda4 [lindex $lambda 3]
set lambda5 [lindex $lambda 4]


set omega1 [expr pow($lambda1,0.5)]
set omega2 [expr pow($lambda2,0.5)]
set omega3 [expr pow($lambda3,0.5)]
set omega4 [expr pow($lambda4,0.5)]
set omega5 [expr pow($lambda5,0.5)]


# coefficient for Rayleigh damping

set beta [expr 2*$Damp/($omega1+$omega2)]
set alpha [expr $omega1*$omega2*$beta]
rayleigh $alpha 0.0 $beta 0.0



# Define Recorder

recorder Node -file nodeVertDispDynWN1N3P$P.out -time -node 1 3 5 7 9 11 -dof 2 disp
recorder Node -file nodeRotDynWN1N3P$P.out -time -node 1 3 5 7 9 11 -dof 3 disp


# Define Analysis Options
#---------------------------------

wipeAnalysis;

constraints Transformation;
test NormUnbalance $tol_dynamic $n_cycles 5
integrator Newmark 0.5 0.25;
algorithm Newton;
numberer RCM;
system BandGeneral
set numincr [expr int($duration/$dtN)]

analysis Transient
analyze $numincr $dtN;

Why Opensees does not record the nodal displacements of the transient analysis? What I wrong?

Thank you again for your previous reply and the next one
M
fmk
Site Admin
Posts: 5884
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk »

if there is nothing in your output files, it means the analysis is not working. if there are a bunch of 0's in your output files it means that node 1 is fixed in the 1 direction or the WN.txt file is not being read or contains gibberish.
mariantonietta2
Posts: 7
Joined: Tue Feb 16, 2010 2:40 am
Location: AIT

Post by mariantonietta2 »

Dear F. Mc Kenna,

I solved with my first model where I imposed a "pattern Plain".
Now I changed the configuration of my beam from a cantilever beam to a simply supported beam.
I fixed the displacement of the extreme nodes with the command (for 2D model):

fix 1 1 1 1
fix 13 1 1 1


and after I imposed a "pattern Plain" with a "Time Series" to a no-fixed node:

#Define Load Pattern
pattern Plain 2 "Series -dt $dt -filePath WN.txt" {
load 7 0.0 $m2 0.0
}


I add that the element of my beam are "element elasticBeamColumn".

I record the nodal displacement with command "recorder Node".
The problem is the the "Time Series" is a white noise with zero mean, but the displacement in the output file are only positive and the grow up from the first time step to the last one.

What happens inside opensees?

I tried to change the configuration of the beam fixing the rotation of the beam ends too and the displacements fluctuate between positive and negative sign, and their magnitude is reasonable.

Thank you in advance
M
Post Reply