Search found 65 matches

by oleviuqserh
Sun Jan 13, 2013 6:53 pm
Forum: Feature Requests/Future Directions
Topic: Requesting a tracer in OpenSees
Replies: 6
Views: 15872

Re: Requesting a tracer in OpenSees

wuhaoshrek,

Since I am not an OpenSees developer, this feature should be taken as a concept. However, as Frank explains above, a workaround with eleResponse command may solve the problem.
by oleviuqserh
Mon Oct 15, 2012 4:22 pm
Forum: Feature Requests/Future Directions
Topic: Current Status: OpenSees on Ruby/Python
Replies: 3
Views: 12574

Current Status: OpenSees on Ruby/Python

Dear Frank McKenna and OpenSees Developers,

First of all, thank you very much for providing us with this amazing interpreter for studying the dynamic response of structures under the action of earthquakes and other dynamic loads!

The following is just a remainder :)

This request has been asked several times on the OpenSees Board that I would like to know its current status. Compiling OpenSees on a true object-oriented interpreter, such as Ruby or Python, will enable us to make more powerful and reusable scripts than ever before. For example, a great feature would be the possibility of gathering any information/data stored in the Domain Object, with the purpose of making certain operations with them, as shown in the following example (the syntax was taken from Ruby):

% m=Model.new("basic", 2, 3)
% m.type
=> "basic"

% m.ndm
=> 2

% m.ndf
=> 3

% if m.type == "basic"
% print "The model type is basic."
% end
=> "The model type is basic."

% node1=Node.new(3.00, 5.00)
% node1.x
=> 3.00

% node1.y
=> 5.00

% mat1=UniaxialMaterial.new("Concrete01", 1000, 21000., 0.0018, 15000., 0.0036)
% mat1.type
=> "UniaxialMaterial::Concrete01"

% mat1.tag
=> 1000

% mat1.fpc
=> 21000.

% mat1.epsc0
=> 0.0018

% mat1.fpcu
=> 15000.

% mat1.epsU
=> 0.0036

% 1.35*mat1.fpc
=> 28350.

and so on...

Thank you!

P.S. Perhaps these two links may be very helpful for you, if Ruby is intended to be used:
http://fixnum.org/blog/2007/ruby_c/
http://www.ruby-doc.org/docs/Programmin ... _ruby.html
by oleviuqserh
Thu Oct 11, 2012 8:52 am
Forum: OpenSees.exe Users
Topic: xL in EleLoad Command
Replies: 1
Views: 2132

xL in EleLoad Command

Dear Frank/Vesna,

What does mean xL in here:
http://opensees.berkeley.edu/wiki/index ... ad_Command

And would you please add its definition to the documentation for future references.

Thank you!
by oleviuqserh
Tue Feb 07, 2012 8:41 am
Forum: Feature Requests/Future Directions
Topic: Requesting a tracer in OpenSees
Replies: 6
Views: 15872

Re: Requesting a tracer in OpenSees

Dear Frank McKenna,

Thank you very much to stay tuned in this subject. Should I assume you are working in the implementation of this feature currently? As of your request, there is not such a link. The example I propose here for this feature is explained above (first post). The another example that I reference externally was solved nicely using eleResponse command, though.

"an alternative would be to use the existing recorder command and add a new handler (place where recorder output goes) that the user could query from the script.". Would you explain me in more detail that another alternative? Perhaps, by giving me an example?

Thank you.
by oleviuqserh
Sun Jan 29, 2012 10:56 am
Forum: OpenSees.exe Users
Topic: Solving the quadratic eigenvalue problem
Replies: 1
Views: 2172

Solving the quadratic eigenvalue problem

Dear Vesna,

I would like to know if the quadratic eigenvalue problem can be solved in OpenSees? If so, what command should be used?

Thank you.
by oleviuqserh
Tue Dec 20, 2011 6:27 pm
Forum: OpenSees.exe Users
Topic: Prestressed concrete
Replies: 3
Views: 5201

Re: Prestressed concrete

Dear Vesna,

When you say that curved cable can be modeled using several truss elements, this means the beam must be modeled with a bundle of shell-elements (ShellMITC4 perhaps?) or aproximating the beam with a strut-and-tie model? If neither is the case, how can we connect these truss elements (curved cable) with the forceBeamColumn elements that actually represent the beam?

Thank you.
by oleviuqserh
Mon Nov 21, 2011 5:27 pm
Forum: OpenSees.exe Users
Topic: Estimate of base shear coefficient
Replies: 6
Views: 9401

Re: Estimate of base shear coefficient

Sorry, I misunderstood you. Yes, you are right. The base shear of the bridge is computed as the summation of all transverse reactions recorded _at every time step_ throughout the simulation. This is the same no matter if you are performing a pushover analysis or a seismic simulation. I thought you were suggesting of doing an accumulative summation of all transverse reactions recorded from time t0 to time tf… So yes, you are right and this is the correct way to do it…

The following is a document which I strongly recommend to clear up doubts about static nonlinear analysis procedures: "ATC-40. Seismic Evaluation and Retrofit of Concrete Buildings, Volume 1, by Applied Technology Council." Another useful document is the study recently conducted by the PEER team: "Modeling and acceptance criteria for seismic design and analysis of tall buildings." Although, the document is mainly focused on analysis of tall buildings, there is a chapter dealing with nonlinear analysis procedures.
by oleviuqserh
Mon Nov 21, 2011 9:39 am
Forum: OpenSees.exe Users
Topic: Estimate of base shear coefficient
Replies: 6
Views: 9401

Re: Estimate of base shear coefficient

Would you tell me what kind of information derived from your dynamic analysis are you inputting in the analysis of pushover (I presume you are performing a static-pushover analysis). In other words, are you performing a seismic simulation with a representative set of earthquakes to get an intermediate value of the base shear or just solving an eigen-problem (consisting of obtaining the eigenvectors and their corresponding eigenvalues) to generate the shape of the pushing-load?

Moreover, I do not know any useful indicator which consists of summing all transverse reactions recorded throughout the simulation to get a preview of the base shear at yielding. In fact, because of the nonlinearity of the problem, you cannot infer it by any means. Additionally, if rebars did not experience yielding in tension, I would suggest that crushing in the concrete is also monitored or checked at the other face of the section, since this action could be controlling the failure of the section.
by oleviuqserh
Sun Nov 20, 2011 3:09 pm
Forum: OpenSees.exe Users
Topic: Estimate of base shear coefficient
Replies: 6
Views: 9401

Re: Estimate of base shear coefficient

As far I know, the base shear coefficient is computed just as described… dividing the base shear of the structure with its weight. However, according to your post, it sounds like you are dividing the maximum base shear (calculated by means of a static-pushover analysis) with the weight of the bridge. The base shear at yielding, however, should be preferably taken at the moment in which the first plastic hinge is generated within the structure. This value is then divided by the total weight of the bridge to obtain the base shear coefficient at yielding.

> In dynamics analysis, how do I determine the base shear in each column?

By "base shear", what do you mean? Maximum base shear that each column can carry on, or the base shear at section yielding.
by oleviuqserh
Sat Nov 19, 2011 4:06 pm
Forum: OpenSees.exe Users
Topic: New version is now ready to be ported in Ruby/Matlab/Python?
Replies: 0
Views: 1667

New version is now ready to be ported in Ruby/Matlab/Python?

Hi Frank. Thank you very much for this new release. It is greatly appreciated.

I was wondering if by this:
"API_Dummy code added for C++ developers wishing to write their own main that does not use Tcl."

you mean that developers are now ready to port OpenSees in other languages, such as Ruby/Matlab/Python, using the tools you just have coded within this new release... version 2.3.2?

Thank you.
by oleviuqserh
Tue Aug 23, 2011 2:56 pm
Forum: OpenSees.exe Users
Topic: About the curvature
Replies: 1
Views: 2016

About the curvature

Hi Vesna. In OpenSees, the curvature is calculated with respect to the neutral axis, and the moment with respect to the centroidal axis, isn't it? Thank you very much.
by oleviuqserh
Mon Jul 25, 2011 3:07 pm
Forum: OpenSees.exe Users
Topic: "remove timeSeries $tag" in OpenSees 2.3.0
Replies: 13
Views: 15970

Re: "remove timeSeries $tag" in OpenSees 2.3.0

No, it does not work for me. It looks like there is a bug for the mac platform. Can I ask you one more thing? Could you run this script, please? The difference with yours is that at the end I define again the timeSeries I just deleted:

--------------------------------------------------------
timeSeries PeerNGAMotion 2 /BORREGO/A-ELC270 386.4
--------------------------------------------------------

I just want to know if the command "remove timeSeries $tag" is actually removing the timeSeries object.

Thank you very much.





# SET UP ----------------------------------------------------------------------------
wipe; # clear opensees model
model basic -ndm 2 -ndf 3; # 2 dimensions, 3 dof per node
file mkdir data; # create data directory

# define GEOMETRY -------------------------------------------------------------
# nodal coordinates:
node 1 0. 0.; # node#, X Y
node 2 0. 432.

# Single point constraints -- Boundary Conditions
fix 1 1 1 1; # node DX DY RZ

# nodal masses:
mass 2 5.18 1.e-9 0.; # node#, Mx My Mz, Mass=Weight/g.

# Define ELEMENTS -------------------------------------------------------------
# define geometric transformation: performs a linear geometric transformation of beam stiffness and resisting force from the basic system to the global-coordinate system
geomTransf Linear 1; # associate a tag to transformation

# connectivity:
element elasticBeamColumn 1 1 2 3600 3225 1080000 1; # element elasticBeamColumn $eleTag $iNode $jNode $A $E $Iz $transfTag

# Define RECORDERS -------------------------------------------------------------
recorder Node -file Data/DFree.out -time -node 2 -dof 1 2 3 disp; # displacements of free nodes
recorder Node -file Data/RBase.out -time -node 1 -dof 1 2 3 reaction; # support reaction
recorder Drift -file Data/Drift.out -time -iNode 1 -jNode 2 -dof 1 -perpDirn 2 ; # lateral drift
recorder Element -file Data/FCol.out -time -ele 1 force; # element forces -- column

# define GRAVITY -------------------------------------------------------------
timeSeries Linear 1
pattern Plain 1 1 {
load 2 0. -2000. 0.; # node#, FX FY MZ -- superstructure-weight
}
constraints Plain; # how it handles boundary conditions
numberer Plain; # renumber dof's to minimize band-width (optimization), if you want to
system BandGeneral; # how to store and solve the system of equations in the analysis
algorithm Linear; # use Linear algorithm for linear analysis
integrator LoadControl 0.1; # determine the next time step for an analysis, # apply gravity in 10 steps
analysis Static # define type of analysis static or transient
analyze 10; # perform gravity analysis
loadConst -time 0.0; # hold gravity constant and restart time

# DYNAMIC ground-motion analysis -------------------------------------------------------------
# create load pattern
set G 386
#timeSeries Path 2 -dt 0.005 -filePath A10000.tcl -factor $G; # define acceleration vector from file (dt=0.005 is associated with the input file gm)
timeSeries PeerNGAMotion 2 /BORREGO/A-ELC270 386.4
pattern UniformExcitation 2 1 -accel 2; # define where and how (pattern tag, dof) acceleration is applied

# set damping based on first eigen mode
set freq [expr [eigen 1]**0.5]
set dampRatio 0.02
rayleigh 0. 0. 0. [expr 2*$dampRatio/$freq]

# create the analysis
wipeAnalysis; # clear previously-define analysis parameters
constraints Plain; # how it handles boundary conditions
numberer Plain; # renumber dof's to minimize band-width (optimization), if you want to
system BandGeneral; # how to store and solve the system of equations in the analysis
algorithm Linear # use Linear algorithm for linear analysis
integrator Newmark 0.5 0.25 ; # determine the next time step for an analysis
analysis Transient; # define type of analysis: time-dependent
analyze 3995 0.01; # apply 3995 0.01-sec time steps in analysis


puts "Done!"
#wipe

remove timeSeries 2

timeSeries PeerNGAMotion 2 /BORREGO/A-ELC270 386.4
by oleviuqserh
Fri Jul 22, 2011 4:39 pm
Forum: OpenSees.exe Users
Topic: "remove timeSeries $tag" in OpenSees 2.3.0
Replies: 13
Views: 15970

Re: "remove timeSeries $tag" in OpenSees 2.3.0

Hi Vesna. I downloaded again OpenSees version 2.3.0 (for the mac platform; at the moment I do not have access to a windows machine to test my script) from the download page and ran again the simulation. However, as before I am getting the same error. Please, would you send me via e-mail the model you did to look at if that one works on my computer? Thank you. PS: my e-mail is oleviuqserh at hotmail dot com. Thanks.
by oleviuqserh
Thu Jul 21, 2011 10:16 am
Forum: OpenSees.exe Users
Topic: "remove timeSeries $tag" in OpenSees 2.3.0
Replies: 13
Views: 15970

Re: "remove timeSeries $tag" in OpenSees 2.3.0

Vesna, thank you very much for the reply. Maybe such command was added on a later time. I looked at the source code again and found this in commands.cpp:

------------------------------
int
removeObject(ClientData clientData, Tcl_Interp *interp, int argc,
TCL_Char **argv)
{
// make sure at least one other argument to contain type of system
if (argc < 2) {
opserr << "WARNING want - remove objectType?\n";
return TCL_ERROR;
}

int tag;

if …………

else if ((strcmp(argv[1],"timeSeries") == 0)) {
if (argc < 3) {
opserr << "WARNING want - remove timeSeries $tag\n";
return TCL_ERROR;
}

if (Tcl_GetInt(interp, argv[2], &tag) != TCL_OK) {
opserr << "WARNING remove timeSeries tag? failed to read tag: " << argv[2] << endln;
return TCL_ERROR;
}
return OPS_removeTimeSeries(tag);
}

………


else
opserr << "WARNING remove " << argv[1] << " not supported" << endln;

return TCL_OK;
}
------------------------------

Anyway… I think I can wait until this command is finally released in the near future. But most likely I am wrong :)

Thank you very much for your kind of help.
by oleviuqserh
Wed Jul 20, 2011 7:09 am
Forum: OpenSees.exe Users
Topic: "remove timeSeries $tag" in OpenSees 2.3.0
Replies: 13
Views: 15970

Re: "remove timeSeries $tag" in OpenSees 2.3.0

Hi Frank. I wonder if in the new version of OpenSees (2.3.0) is possible to remove timeSeries objects. Taking a look at the source code, this feature seems to have added within this release but I think is not working. Thanks.