Hi
Part of my code utilizes csv package (package require csv) in OpenSees which should be related to tcl. It is run fine on my computer but on stampede whether I use OpenSees OR OpenSeesMP , it does not run and it says : can't find package csv
I was wondering how this can be resolved ?
Thanks
RG
Search found 64 matches
- Wed Sep 07, 2016 11:40 pm
- Forum: Parallel Processing
- Topic: csv package on Stampede
- Replies: 1
- Views: 3879
- Wed Aug 31, 2016 11:07 am
- Forum: Parallel Processing
- Topic: Batch submission on stampede VIA OpenSeesMP
- Replies: 2
- Views: 4989
Re: Batch submission on stampede VIA OpenSeesMP
Thanks Frank !
To those whom would be using OpenSeesMP on stampede , you may use something like this as your batch script to be executed using "sbatch" command on the login node (scratch preferably)
#!/bin/bash
#SBATCH -J TRUSS # job name
#SBATCH -o TRUSS.o%j # output and error file name (%j expands to jobID)
#SBATCH -n 32 # total number of mpi tasks requested
#SBATCH -p development # queue (partition) -- normal, development, etc.
#SBATCH -t 01:30:00 # run time (hh:mm:ss) - 1.5 hours
#SBATCH --mail-user=rg@tacc.utexas.edu
#SBATCH --mail-type=begin # email me when the job starts
#SBATCH --mail-type=end # email me when the job finishes
module load petsc/3.6
ibrun -np 2 /home1/00477/tg457427/bin/OpenSeesMP /scratch/04103/rg/truss/truss.tcl
To those whom would be using OpenSeesMP on stampede , you may use something like this as your batch script to be executed using "sbatch" command on the login node (scratch preferably)
#!/bin/bash
#SBATCH -J TRUSS # job name
#SBATCH -o TRUSS.o%j # output and error file name (%j expands to jobID)
#SBATCH -n 32 # total number of mpi tasks requested
#SBATCH -p development # queue (partition) -- normal, development, etc.
#SBATCH -t 01:30:00 # run time (hh:mm:ss) - 1.5 hours
#SBATCH --mail-user=rg@tacc.utexas.edu
#SBATCH --mail-type=begin # email me when the job starts
#SBATCH --mail-type=end # email me when the job finishes
module load petsc/3.6
ibrun -np 2 /home1/00477/tg457427/bin/OpenSeesMP /scratch/04103/rg/truss/truss.tcl
- Tue Aug 30, 2016 11:34 pm
- Forum: Parallel Processing
- Topic: Batch submission on stampede VIA OpenSeesMP
- Replies: 2
- Views: 4989
Batch submission on stampede VIA OpenSeesMP
I am new to stampede !
I have borrowed this script from one of Frank's presentations !
When I am running this on stampede through batch submission I am getting this error :
/home1/00477/tg457427/bin/OpenSeesMP: error while loading shared libraries: libpetsc.so.3.6: cannot open shared object file: No such file or director
So I guess the main problem is how to load the OpenSeesMP module ? If you please take a look at the script down below you will see how I am doing that !
set pid [getPID]
set np [getNP]
if {$np != 2} exit
model BasicBuilder -ndm 2 -ndf 2
uniaxialMaterial Elastic 1 3000
if {$pid == 0} {
node1 0.0 0.0
node 4 72.0 96.0
fix 1 1 1
element truss 1 1 4 10.0 1
pattern Plain 1 "Linear" {
load 4 100 -50
}
} else {
node 2 144.0 0.0
node 3 168.0 0.0
node 4 72.0 96.0
fix 2 1 1
fix 3 1 1
element truss 2 2 4 5.0 1
element truss 3 3 4 5.0 1
}
#create the recorder
recorder Node -file node4.out.$pid -node 4 -dof 1 2 disp
#create the analysis
constraints Transformation
numberer ParallelPlain
system Mumps
test NormDispIncr 1.0e-6 6 2
algorithm Newton
integrator LoadControl 0.1
analysis Static
#perform the analysis
analyze 10
# print to screen node 4
print node 4
######################
In order to be able to batch submit on stampede
I have a script as follows which is in a separate file named batchjob.txt:
#!/bin/bash
#SBATCH -J IDA # job name
#SBATCH -o IDA.o%j # output and error file name (%j expands to jobID)
#SBATCH -n 32 # total number of mpi tasks requested
#SBATCH -p development # queue (partition) -- normal, development, etc.
#SBATCH -t 01:30:00 # run time (hh:mm:ss) - 1.5 hours
#SBATCH --mail-user=af@tacc.utexas.edu
#SBATCH --mail-type=begin # email me when the job starts
#SBATCH --mail-type=end # email me when the job finishes
ibrun -np 16 /home1/00477/tg457427/bin/OpenSeesMP /home1/04103/rg/truss/truss.tcl
###############
In order to batch summit this on stampede I use this command on the login node :
sbatch batchjob.txt
The problem is that I am not getting any results while the job is submitted properly .
Any comments ?
Thanks
ER.
I have borrowed this script from one of Frank's presentations !
When I am running this on stampede through batch submission I am getting this error :
/home1/00477/tg457427/bin/OpenSeesMP: error while loading shared libraries: libpetsc.so.3.6: cannot open shared object file: No such file or director
So I guess the main problem is how to load the OpenSeesMP module ? If you please take a look at the script down below you will see how I am doing that !
set pid [getPID]
set np [getNP]
if {$np != 2} exit
model BasicBuilder -ndm 2 -ndf 2
uniaxialMaterial Elastic 1 3000
if {$pid == 0} {
node1 0.0 0.0
node 4 72.0 96.0
fix 1 1 1
element truss 1 1 4 10.0 1
pattern Plain 1 "Linear" {
load 4 100 -50
}
} else {
node 2 144.0 0.0
node 3 168.0 0.0
node 4 72.0 96.0
fix 2 1 1
fix 3 1 1
element truss 2 2 4 5.0 1
element truss 3 3 4 5.0 1
}
#create the recorder
recorder Node -file node4.out.$pid -node 4 -dof 1 2 disp
#create the analysis
constraints Transformation
numberer ParallelPlain
system Mumps
test NormDispIncr 1.0e-6 6 2
algorithm Newton
integrator LoadControl 0.1
analysis Static
#perform the analysis
analyze 10
# print to screen node 4
print node 4
######################
In order to be able to batch submit on stampede
I have a script as follows which is in a separate file named batchjob.txt:
#!/bin/bash
#SBATCH -J IDA # job name
#SBATCH -o IDA.o%j # output and error file name (%j expands to jobID)
#SBATCH -n 32 # total number of mpi tasks requested
#SBATCH -p development # queue (partition) -- normal, development, etc.
#SBATCH -t 01:30:00 # run time (hh:mm:ss) - 1.5 hours
#SBATCH --mail-user=af@tacc.utexas.edu
#SBATCH --mail-type=begin # email me when the job starts
#SBATCH --mail-type=end # email me when the job finishes
ibrun -np 16 /home1/00477/tg457427/bin/OpenSeesMP /home1/04103/rg/truss/truss.tcl
###############
In order to batch summit this on stampede I use this command on the login node :
sbatch batchjob.txt
The problem is that I am not getting any results while the job is submitted properly .
Any comments ?
Thanks
ER.
- Thu Jun 09, 2016 4:28 pm
- Forum: OpenSees.exe Users
- Topic: Rigid diaphragm in a frame with joint2D elements
- Replies: 3
- Views: 4057
Re: Rigid diaphragm in a frame with joint2D elements
Thanks , i think i asked my questions not quite properly . I meant exactly what u mentioned as it can be seen in the peace of code I have shared above .
However, i meant in order to set the horizontal translations, to move together using equalDOF since i have no joint node separately defined as those are generated through joint2D in each joint , then should I set these nodes ( central nodes generated through joint2D) to move together using equalDOF command ? I did so but i am getting convergence error .
Please advise.
However, i meant in order to set the horizontal translations, to move together using equalDOF since i have no joint node separately defined as those are generated through joint2D in each joint , then should I set these nodes ( central nodes generated through joint2D) to move together using equalDOF command ? I did so but i am getting convergence error .
Please advise.
- Thu Jun 09, 2016 11:38 am
- Forum: OpenSees.exe Users
- Topic: Rigid diaphragm in a frame with joint2D elements
- Replies: 3
- Views: 4057
Rigid diaphragm in a frame with joint2D elements
Hi
I was wondering how can I constrain the dof1 of the nodes in each floor in a frame where I use joint2D elements for joints ?
Since the central nodes are generated automatically by joint2D then when I use equalDOF command , it gets me a convergence error.
I use this for that purpose :
# start from 2nd floor
set cennodetag 200; # the cennodetag are the same is the tags of central nodes generated by joint2D
for {set i 2} {$i <= $Nnodesy } {incr i 1} {
for {set j 2} {$j <= [expr $Nnodesx] } {incr j 1} {
#constrain the dof 1 of all the nodes to node 1 in each floor
equalDOF [expr $cennodetag+1] [expr $cennodetag+$j] 1;
}
set cennodetag [expr $cennodetag+100];
}
Or using joint2D would automatically simulate rigid diaphragm in a 2D frame?
Thanks
Reza.
I was wondering how can I constrain the dof1 of the nodes in each floor in a frame where I use joint2D elements for joints ?
Since the central nodes are generated automatically by joint2D then when I use equalDOF command , it gets me a convergence error.
I use this for that purpose :
# start from 2nd floor
set cennodetag 200; # the cennodetag are the same is the tags of central nodes generated by joint2D
for {set i 2} {$i <= $Nnodesy } {incr i 1} {
for {set j 2} {$j <= [expr $Nnodesx] } {incr j 1} {
#constrain the dof 1 of all the nodes to node 1 in each floor
equalDOF [expr $cennodetag+1] [expr $cennodetag+$j] 1;
}
set cennodetag [expr $cennodetag+100];
}
Or using joint2D would automatically simulate rigid diaphragm in a 2D frame?
Thanks
Reza.
- Tue May 24, 2016 11:17 am
- Forum: OpenSees.exe Users
- Topic: Parametric Studies
- Replies: 1
- Views: 2452
Parametric Studies
Hello
Assume we have a set of parameters
like
set LA1 3
set LA2 4
.
.
.
set LA10 10
and we wanna call them in , into a script like:
set {for i 1} {$i <=10 } {incr i } {
set b($i) [expr $LA$i+1]
}
[expr $LA$i+1] does not work , any suggestions that i can call in LA1, LA2,... LA10 automatically into my code?? I know that I can put them into an array and do it but anything but that is available ?
Thanks
RG.
Assume we have a set of parameters
like
set LA1 3
set LA2 4
.
.
.
set LA10 10
and we wanna call them in , into a script like:
set {for i 1} {$i <=10 } {incr i } {
set b($i) [expr $LA$i+1]
}
[expr $LA$i+1] does not work , any suggestions that i can call in LA1, LA2,... LA10 automatically into my code?? I know that I can put them into an array and do it but anything but that is available ?
Thanks
RG.
- Fri Aug 28, 2015 8:47 am
- Forum: OpenSees.exe Users
- Topic: Shear/Axial Springs in Columns
- Replies: 1
- Views: 2561
Shear/Axial Springs in Columns
Hi
I have a 3D reinforced concrete model . I wanna add Shear/Axial springs on top of each column (with fiber section) to model shear/axial degradation.
Should I just define ONE additional node besides the join node and connect those 2 nodes using a zerolength element? Then I can add 3 different materials in 3 different directions to simulate shear in both directions (3D model) and axial responses. I also constrain the rotational DOF's.
In Elwood's work I saw he attached a spring to the end of the column and then define a rigid element connecting the other end of the spring and the joint node. If I am to do so can I just use another zerolegnth element with rigid material properties to connect the end of the shear/axial spring to the join node?
As per recording the response , can I use an element recorder to record the force and deformation response of the shear/axial spring (response of the entire column) instead of using node/reaction recorder?
Thanks
Reza.
I have a 3D reinforced concrete model . I wanna add Shear/Axial springs on top of each column (with fiber section) to model shear/axial degradation.
Should I just define ONE additional node besides the join node and connect those 2 nodes using a zerolength element? Then I can add 3 different materials in 3 different directions to simulate shear in both directions (3D model) and axial responses. I also constrain the rotational DOF's.
In Elwood's work I saw he attached a spring to the end of the column and then define a rigid element connecting the other end of the spring and the joint node. If I am to do so can I just use another zerolegnth element with rigid material properties to connect the end of the shear/axial spring to the join node?
As per recording the response , can I use an element recorder to record the force and deformation response of the shear/axial spring (response of the entire column) instead of using node/reaction recorder?
Thanks
Reza.
- Wed Apr 01, 2015 1:40 am
- Forum: OpenSees.exe Users
- Topic: Read from PEER NGA Files
- Replies: 1
- Views: 3292
Read from PEER NGA Files
With this new PEER headline
PEER NGA STRONG MOTION DATABASE RECORD
Landers, 6/28/1992, Yermo Fire Station, 360
ACCELERATION TIME SERIES IN UNITS OF G
NPTS= 2200, DT= .0200 SEC
the ReadNGAFile.tcl gets me an error
What change should I make in the following code (ReadNGAFile.tcl) so that it gives me NPTs , DT and ground motion data without error ?
I played around a bit , however it didn't work yet !
# READNGAFILE.TCL
# ------------------------------------------------------------------------------------------------------------
#
# Written: fmk
# Date: July 2000
# Modified fmk, 2010
# A procedure which parses a ground motion record from the PEER
# strong motion database by finding dt in the record header, then
# echoing data values to the output file.
#
# Formal arguments
# inFilename -- file which contains PEER strong motion record
# outFilename -- file to be written in format G3 can read
# dt -- time step determined from file header
# nPts -- number of data points from file header
#
# Assumptions
# The header in the PEER record is, e.g., formatted as follows:
# PACIFIC ENGINEERING AND ANALYSIS STRONG-MOTION DATA
# IMPERIAL VALLEY 10/15/79 2319, EL CENTRO ARRAY 6, 230
# ACCELERATION TIME HISTORY IN UNITS OF G
# 3930 0.00500 NPTS, DT
proc ReadNGAFile {inFilename outFilename dt nPts} {
# Pass dt by reference
upvar $dt DT
upvar $nPts NPTS
# Open the input file and catch the error if it can't be read
if [catch {open $inFilename r} inFileID] {
puts stderr "Cannot open $inFilename for reading"
} else {
# Open output file for writing
set outFileID [open $outFilename w]
# Flag indicating dt is found and that ground motion
# values should be read -- ASSUMES dt is on last line
# of header!!!
set flag 0
# Look at each line in the file
foreach line [split [read $inFileID] \n] {
if {[llength $line] == 0} {
# Blank line --> do nothing
continue
} elseif {$flag == 1} {
# Echo ground motion values to output file
puts $outFileID $line
} else {
# Search header lines for dt
set count 0;
foreach word [split $line] {
if {$word != ""} {
if {$count == 0} {
set NPTS $word;
} elseif {$count == 1} {
set DT $word;
} elseif {[string match $word "DT"] == 1} {
set flag 1;
break;
}
incr count 1
}
}
}
}
# Close the output file
close $outFileID
# Close the input file
close $inFileID
}
}
PEER NGA STRONG MOTION DATABASE RECORD
Landers, 6/28/1992, Yermo Fire Station, 360
ACCELERATION TIME SERIES IN UNITS OF G
NPTS= 2200, DT= .0200 SEC
the ReadNGAFile.tcl gets me an error
What change should I make in the following code (ReadNGAFile.tcl) so that it gives me NPTs , DT and ground motion data without error ?
I played around a bit , however it didn't work yet !
# READNGAFILE.TCL
# ------------------------------------------------------------------------------------------------------------
#
# Written: fmk
# Date: July 2000
# Modified fmk, 2010
# A procedure which parses a ground motion record from the PEER
# strong motion database by finding dt in the record header, then
# echoing data values to the output file.
#
# Formal arguments
# inFilename -- file which contains PEER strong motion record
# outFilename -- file to be written in format G3 can read
# dt -- time step determined from file header
# nPts -- number of data points from file header
#
# Assumptions
# The header in the PEER record is, e.g., formatted as follows:
# PACIFIC ENGINEERING AND ANALYSIS STRONG-MOTION DATA
# IMPERIAL VALLEY 10/15/79 2319, EL CENTRO ARRAY 6, 230
# ACCELERATION TIME HISTORY IN UNITS OF G
# 3930 0.00500 NPTS, DT
proc ReadNGAFile {inFilename outFilename dt nPts} {
# Pass dt by reference
upvar $dt DT
upvar $nPts NPTS
# Open the input file and catch the error if it can't be read
if [catch {open $inFilename r} inFileID] {
puts stderr "Cannot open $inFilename for reading"
} else {
# Open output file for writing
set outFileID [open $outFilename w]
# Flag indicating dt is found and that ground motion
# values should be read -- ASSUMES dt is on last line
# of header!!!
set flag 0
# Look at each line in the file
foreach line [split [read $inFileID] \n] {
if {[llength $line] == 0} {
# Blank line --> do nothing
continue
} elseif {$flag == 1} {
# Echo ground motion values to output file
puts $outFileID $line
} else {
# Search header lines for dt
set count 0;
foreach word [split $line] {
if {$word != ""} {
if {$count == 0} {
set NPTS $word;
} elseif {$count == 1} {
set DT $word;
} elseif {[string match $word "DT"] == 1} {
set flag 1;
break;
}
incr count 1
}
}
}
}
# Close the output file
close $outFileID
# Close the input file
close $inFileID
}
}
- Fri Feb 13, 2015 5:10 pm
- Forum: OpenSees.exe Users
- Topic: Recording peak values of EDPs for an earthquake
- Replies: 9
- Views: 8234
Recording peak values of EDPs for an earthquake
Hi
I am running numerous dynamic analyses and I am recording various Engineering Demand Parameters (EDPs). In order to save my memory space I am willing to just select the peaks and possibly the end values for various EDPs and record them in a text file and then get rid of the other data.
Is there any way to do so in OpenSees ?
I am aware of envelope recorders but for example for drift I couldn't find one ! Or maybe I can use the envelope node recorders and just compute the drift myself ?
Best
Reza.
I am running numerous dynamic analyses and I am recording various Engineering Demand Parameters (EDPs). In order to save my memory space I am willing to just select the peaks and possibly the end values for various EDPs and record them in a text file and then get rid of the other data.
Is there any way to do so in OpenSees ?
I am aware of envelope recorders but for example for drift I couldn't find one ! Or maybe I can use the envelope node recorders and just compute the drift myself ?
Best
Reza.
- Sun Nov 16, 2014 11:26 pm
- Forum: OpenSees.exe Users
- Topic: OpenSeesMP Error
- Replies: 1
- Views: 2464
OpenSeesMP Error
I got this error when I ran a simple example ( Example.tcl) on Hoffman cluster at UCLA , Can you help me find out what's going on?
Num Processors: 4Num Processors: 4Num Processors: 4
Num Processors: 4
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 0
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 1
while executing
"system Mumps"
(file "Example.tcl" line 43)
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 3
Process Terminating 2
Num Processors: 4Num Processors: 4Num Processors: 4
Num Processors: 4
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 0
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 1
while executing
"system Mumps"
(file "Example.tcl" line 43)
while executing
"system Mumps"
(file "Example.tcl" line 43)
Process Terminating 3
Process Terminating 2
- Thu Nov 13, 2014 2:13 pm
- Forum: OpenSees.exe Users
- Topic: Parallel Computing
- Replies: 1
- Views: 2617
Parallel Computing
Hello
I am going to parallelize the code for my 3D-8-story RC building using OpenSeesMP
There is going to be a vast number of parametric studies in which input parameters would be taken into account as Probability Distribution Function (pdf)
Besides, record-to-record uncertainty in ground motion would be considered
My question :
I am going to follow Frank’s presentation and add that 6 lines of code to make it work in parallel , but I have several thoughts going on in mind as I am new to parallel computing !
1- If I only do the analysis for a suite of ground motion and do the parametric study next, then would not it be better that I do the domain decompression in OpenSeesMP meaning that I assign various elements to different processors? or it is automatically done meaning that my model is run in multiple processors for each ground motion ? Is it automatically decomposed?
2- Using that 6 lines of code, each dynamic analysis is run in a separate processor whose ID is defined by the user using “if {[expr $count % $np] == $pid} { , but if if I wanna do domain decomposition , then should I use a similar if command to define various nodes and associated elements under specified processors?
3- Same for the parametric study in terms of monte-carlo simulations , under a suite of GMs, Can you please advise me on this a bit so as how can I parallelize these types of analysis ?
Thanks
Reza.
I am going to parallelize the code for my 3D-8-story RC building using OpenSeesMP
There is going to be a vast number of parametric studies in which input parameters would be taken into account as Probability Distribution Function (pdf)
Besides, record-to-record uncertainty in ground motion would be considered
My question :
I am going to follow Frank’s presentation and add that 6 lines of code to make it work in parallel , but I have several thoughts going on in mind as I am new to parallel computing !
1- If I only do the analysis for a suite of ground motion and do the parametric study next, then would not it be better that I do the domain decompression in OpenSeesMP meaning that I assign various elements to different processors? or it is automatically done meaning that my model is run in multiple processors for each ground motion ? Is it automatically decomposed?
2- Using that 6 lines of code, each dynamic analysis is run in a separate processor whose ID is defined by the user using “if {[expr $count % $np] == $pid} { , but if if I wanna do domain decomposition , then should I use a similar if command to define various nodes and associated elements under specified processors?
3- Same for the parametric study in terms of monte-carlo simulations , under a suite of GMs, Can you please advise me on this a bit so as how can I parallelize these types of analysis ?
Thanks
Reza.
- Wed Oct 15, 2014 12:13 pm
- Forum: OpenSees.exe Users
- Topic: Problem With Recording
- Replies: 1
- Views: 2653
Problem With Recording
Hi
I am getting this massage when I am trying to do dynamic analysis on my 8-story concrete frame building which is modeled in 3D.
"couldn't read file "ReadNGAFile.tcl": too many open files"
How can I fix this problem ??
here are my recorder commands given below ;
When I limit '' level'' to a few numbers for example 2000, 4000, and 7000. it works .
But how can I get my recorders work for the entire model?
########################################
########################################
########################################
#### recording force and deformation in springs
for {set level 2000} {$level <= 7000} {incr level 1000} {
foreach count {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 21 22 24 25 27 28 30 31 33 34 36 37 39 40 42 43 45 46 48} {
set zerolid [expr $level+10000+$count]
file mkdir Datazerolength
recorder Element -file Datazerolength/force_$zerolid.out -ele $zerolid force 1 2 6
recorder Element -file Datazerolength/def_$zerolid.out -ele $zerolid deformation 1 2 6
}
}
#############################################
#############################################
# column id starts from 1500 cuz beems id ends at 1400
# please also note that column eles connect nodes of 2 consequtive levels, for instance, 2000-3000, 3000-4000,....
for {set level 2000} { $level <= 7000} {incr level 1000} {
foreach count {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 21 22 24 25 27 28 30 31 33 34 36 37 39 40 42 43 45 46 48} {
if {$level==2000} {
set id 9000
} elseif {$level==3000} {
set id 9100
} elseif {$level==4000} {
set id 9200
} elseif {$level==5000} {
set id 9300
} elseif {$level==6000} {
set id 9400
} elseif {$level==7000} {
set id 9500
}
set colid [expr $level+$id+$count]
#########################################
file mkdir DatacolumnForDef
#recorder Element -file DatacolumnForDef/forcecol_$colid.out -ele $colid section force
recorder Element -file DatacolumnForDef/forcecol_$colid.out.out -ele $colid globalForce
recorder Element -file DatacolumnForDef/defcol_$colid.out.out -ele $colid section deformation
###########################################
file mkdir DatacoloumnDrift
#############################
#############################
###### recording inter-story dirfts for both directions 1 and 3
recorder Drift -file DatacoloumnDrift/coldriftdir1_$level$count.out -time -iNode [expr $level+$count] -jNode [expr $level+$count+1000] -dof 1 -perpDirn 2
recorder Drift -file DatacoloumnDrift/coldriftdir2_$level$count.out -time -iNode [expr $level+$count] -jNode [expr $level+$count+1000] -dof 3 -perpDirn 2
}
}
####################################
####################################
####################################
####################################
I am getting this massage when I am trying to do dynamic analysis on my 8-story concrete frame building which is modeled in 3D.
"couldn't read file "ReadNGAFile.tcl": too many open files"
How can I fix this problem ??
here are my recorder commands given below ;
When I limit '' level'' to a few numbers for example 2000, 4000, and 7000. it works .
But how can I get my recorders work for the entire model?
########################################
########################################
########################################
#### recording force and deformation in springs
for {set level 2000} {$level <= 7000} {incr level 1000} {
foreach count {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 21 22 24 25 27 28 30 31 33 34 36 37 39 40 42 43 45 46 48} {
set zerolid [expr $level+10000+$count]
file mkdir Datazerolength
recorder Element -file Datazerolength/force_$zerolid.out -ele $zerolid force 1 2 6
recorder Element -file Datazerolength/def_$zerolid.out -ele $zerolid deformation 1 2 6
}
}
#############################################
#############################################
# column id starts from 1500 cuz beems id ends at 1400
# please also note that column eles connect nodes of 2 consequtive levels, for instance, 2000-3000, 3000-4000,....
for {set level 2000} { $level <= 7000} {incr level 1000} {
foreach count {1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 21 22 24 25 27 28 30 31 33 34 36 37 39 40 42 43 45 46 48} {
if {$level==2000} {
set id 9000
} elseif {$level==3000} {
set id 9100
} elseif {$level==4000} {
set id 9200
} elseif {$level==5000} {
set id 9300
} elseif {$level==6000} {
set id 9400
} elseif {$level==7000} {
set id 9500
}
set colid [expr $level+$id+$count]
#########################################
file mkdir DatacolumnForDef
#recorder Element -file DatacolumnForDef/forcecol_$colid.out -ele $colid section force
recorder Element -file DatacolumnForDef/forcecol_$colid.out.out -ele $colid globalForce
recorder Element -file DatacolumnForDef/defcol_$colid.out.out -ele $colid section deformation
###########################################
file mkdir DatacoloumnDrift
#############################
#############################
###### recording inter-story dirfts for both directions 1 and 3
recorder Drift -file DatacoloumnDrift/coldriftdir1_$level$count.out -time -iNode [expr $level+$count] -jNode [expr $level+$count+1000] -dof 1 -perpDirn 2
recorder Drift -file DatacoloumnDrift/coldriftdir2_$level$count.out -time -iNode [expr $level+$count] -jNode [expr $level+$count+1000] -dof 3 -perpDirn 2
}
}
####################################
####################################
####################################
####################################
- Mon Oct 13, 2014 1:17 pm
- Forum: OpenSees.exe Users
- Topic: OpenSees on Mac
- Replies: 1
- Views: 2512
OpenSees on Mac
Hi
I have always used opensees on windows !
Recently I have become a mac user . I have opensees in the same directory as my files
But when I put source test.tcl , i get this error "couldn't read file "test.tcl": no such file or directory"
should I use different command in mac?
I have always used opensees on windows !
Recently I have become a mac user . I have opensees in the same directory as my files
But when I put source test.tcl , i get this error "couldn't read file "test.tcl": no such file or directory"
should I use different command in mac?
- Sun Aug 31, 2014 6:13 pm
- Forum: OpenSees.exe Users
- Topic: Shear & Axial Limit state materials in Series with Fiber
- Replies: 0
- Views: 2093
Shear & Axial Limit state materials in Series with Fiber
Hi
I use fiber section to simulate flexural behavior in columns in a 3D frame. I also attached axial and shear limit state material including axial and shear limit curve at the top of each column using zero length elements.
Now I would like to record the shear and axial responses in column and plot them against drift!
Should I record the forces (i.e. shear and axial) in the last section (i.e. very end fiber at the column top) of columns? I think the effect of shear and axial springs should be already incorporated into these forces as by assigning zero length elements to the top of the columns, they are gonna be in series with column.
It is interesting since I have numerous springs as I have many columns and I use the following command to assign axial and shear behavior to column
equalDOF $nodeid $slavenode 1 2 3
element zeroLength [expr $level+10000+$count] $nodeid $slavenode -mat $shearTag $axialFailTag $shearTag $centerSlipTag $centerSlipTag $centerSlipTag -dir 1 2 3 4 5 6
but when I am recording the responses in various springs, most of them give me columns of zeros with a few numeric values but some of them give me column of numbers and I was wondering why this is happening ?
I use fiber section to simulate flexural behavior in columns in a 3D frame. I also attached axial and shear limit state material including axial and shear limit curve at the top of each column using zero length elements.
Now I would like to record the shear and axial responses in column and plot them against drift!
Should I record the forces (i.e. shear and axial) in the last section (i.e. very end fiber at the column top) of columns? I think the effect of shear and axial springs should be already incorporated into these forces as by assigning zero length elements to the top of the columns, they are gonna be in series with column.
It is interesting since I have numerous springs as I have many columns and I use the following command to assign axial and shear behavior to column
equalDOF $nodeid $slavenode 1 2 3
element zeroLength [expr $level+10000+$count] $nodeid $slavenode -mat $shearTag $axialFailTag $shearTag $centerSlipTag $centerSlipTag $centerSlipTag -dir 1 2 3 4 5 6
but when I am recording the responses in various springs, most of them give me columns of zeros with a few numeric values but some of them give me column of numbers and I was wondering why this is happening ?
- Fri Aug 15, 2014 11:58 am
- Forum: OpenSees.exe Users
- Topic: Shear Wall
- Replies: 1
- Views: 2573
Shear Wall
What is the best element , material model or strategy to model concrete shear wall in a 3D fashion ?
Your suggestions would be much appreciated.
Your suggestions would be much appreciated.