An odd behavior in the recorder command

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

Moderators: silvia, selimgunay, Moderators

Post Reply
hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

An odd behavior in the recorder command

Post by hugo_esquivel » Fri Jul 30, 2010 1:06 pm

Hi Frank. I would like to know why the recorder command does not get expanded when a list of nodes is introduced as variable in it to record a set of nodes... for example,
--------------------------
set nodesPerAxis "101 107 113 119 125 131 137 143 149 155 161 167 173"
recorder Node -file Data/$recorderFile -time -node $nodesPerAxis -dof 1 disp
--------------------------


That definition will produce an error:
--------------------------
NodeRecorder::NodeRecorder - dataToStore 101 107 113 119 125 131 137 143 149 155 161 167 173not recognized (disp, vel, accel, incrDisp, incrDeltaDisp)
--------------------------


However, to overcome the problem, I am employing the eval command as follows to expand the command so it can be properly evaluated...
--------------------------
set nodesPerAxis 101 107 113 119 125 131 137 143 149 155 161 167 173
eval "recorder Node -file Data/$recorderFile -time -node $nodesPerAxis -dof 1 disp"
--------------------------

which will not produce any error.


The funny thing is that the same workaround is not needed in the forceBeamColumn element... so I wonder why such behavior in the recorder command.

-------------------------
set sectionTag "201 201 202 201 201"
element forceBeamColumn $beamTag $nodeITag $nodeJTag [llength $sectionTag] -sections $sectionTag 1 -iter 20 1.e-08
------------------------- (works as expected!)

Any comment regarding this issue will be greatly appreciated!

Many thanks in advance...

PS: I am using OpenSees 2.2.1 (mac version)... the one downloaded from the download page.

silvia
Posts: 3909
Joined: Tue Jan 11, 2005 7:44 am
Location: Degenkolb Engineers
Contact:

Post by silvia » Tue Aug 03, 2010 8:52 am

it's a problem with the recorder command.

put in eval in front:

eval "recorder Node -file Data/$recorderFile -time -node $nodesPerAxis -dof 1 disp"

that way it puts in the numbers into the command and then evaluates the command.
Silvia Mazzoni, PhD
Structural Consultant
Degenkolb Engineers
235 Montgomery Street, Suite 500
San Francisco, CA. 94104

hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel » Tue Aug 03, 2010 11:39 am

Silvia, thanks for the answer. Some time ago, you suggest me to do the same thing... that is, the same workaround I am mentioning above. However, since as of version 2.2.1 the use of eval to expand and evaluate the forceBeamColumn command is not been needed anymore, I was wondering why the same thing cannot be implemented in the recorder command. If the problem is more complex than just adding a few lines in the source code, please just ignore my request.

silvia
Posts: 3909
Joined: Tue Jan 11, 2005 7:44 am
Location: Degenkolb Engineers
Contact:

Post by silvia » Tue Aug 03, 2010 1:21 pm

talk to Frank about it!!!!
Silvia Mazzoni, PhD
Structural Consultant
Degenkolb Engineers
235 Montgomery Street, Suite 500
San Francisco, CA. 94104

hugo_esquivel
Posts: 71
Joined: Fri Nov 06, 2009 6:40 am
Location: Universidad del Norte, Colombia

Post by hugo_esquivel » Tue Aug 03, 2010 1:40 pm

In such a case, I will stay tuned awaiting his comments :). Thanks.

silvia
Posts: 3909
Joined: Tue Jan 11, 2005 7:44 am
Location: Degenkolb Engineers
Contact:

Post by silvia » Tue Aug 03, 2010 7:32 pm

he'll tell you it's an element thing!
Silvia Mazzoni, PhD
Structural Consultant
Degenkolb Engineers
235 Montgomery Street, Suite 500
San Francisco, CA. 94104

Post Reply