error while running eg on SP

This forum is for issues related to parallel processing
and OpenSees using the new interpreters OpenSeesSP and OpenSeesMP

Moderator: selimgunay

Post Reply
gourik
Posts: 69
Joined: Wed Dec 31, 2008 10:07 pm
Location: C-DAC,Pune

error while running eg on SP

Post by gourik » Tue Jan 03, 2012 2:31 am

Slave Process Running 1
Slave Process Running 3
Slave Process Running 2
***Cannot bisect a graph with 0 vertices!
***You are trying to partition a graph into too many parts!
DomainPartitioner::partition - too few elements for model to be partitioned
WARNING before analysis; partition failed - too few elements
rank 3 in job 1 yc3_40738 caused collective abort of all ranks
exit status of rank 3: killed by signal 11
rank 1 in job 1 yc3_40738 caused collective abort of all ranks
exit status of rank 1: killed by signal 11


command used to run the eg " mpirun -np 4 /opt/OpenSees/OpenSees-PARALLEL/bin/OpenSeesSP main1.tcl"

main1.tcl
# source in the model and analysis procedures
source model.tcl
# record the forces for all elements
recorder Element -xml eleForces.out .ele all forces
# perform gravity analysis
system ProfileSPD
constraints Transformation
numberer RCM
test NormDispIncr 1.0e-12 10 3
algorithm Newton
integrator LoadControl 0.1
analysis Static
set ok [analyze 10]

model.tcl

source RCsection.tcl

proc doModel {} {

set widthX 240.0
set widthY 240.0
set height 144.0
set P [expr 0.4*$height*$height]
set p $P

model BasicBuilder -ndm 3 -ndf 6

# Set parameters for model geometry
set h $height; #144.0; # Story height
set by $widthX; #240.0; # Bay width in Y-direction
set bx $widthX; #240.0; # Bay width in X-direction

# Create nodes
node 1 [expr -$bx/2] [expr $by/2] 0
node 2 [expr $bx/2] [expr $by/2] 0
node 3 [expr $bx/2] [expr -$by/2] 0
node 4 [expr -$bx/2] [expr -$by/2] 0

node 5 [expr -$bx/2] [expr $by/2] $h
node 6 [expr $bx/2] [expr $by/2] $h
node 7 [expr $bx/2] [expr -$by/2] $h
node 8 [expr -$bx/2] [expr -$by/2] $h

node 10 [expr -$bx/2] [expr $by/2] [expr 2*$h]
node 11 [expr $bx/2] [expr $by/2] [expr 2*$h]
node 12 [expr $bx/2] [expr -$by/2] [expr 2*$h]
node 13 [expr -$bx/2] [expr -$by/2] [expr 2*$h]

node 15 [expr -$bx/2] [expr $by/2] [expr 3*$h]
node 16 [expr $bx/2] [expr $by/2] [expr 3*$h]
node 17 [expr $bx/2] [expr -$by/2] [expr 3*$h]
node 18 [expr -$bx/2] [expr -$by/2] [expr 3*$h]

# Master nodes for rigid diaphragm
# tag X Y Z
node 9 0 0 $h
node 14 0 0 [expr 2*$h]
node 19 0 0 [expr 3*$h]

# Set base constraints
# tag DX DY DZ RX RY RZ
fix 1 1 1 1 1 1 1
fix 2 1 1 1 1 1 1
fix 3 1 1 1 1 1 1
fix 4 1 1 1 1 1 1

# Define rigid diaphragm multi-point constraints
# normalDir master slaves
rigidDiaphragm 3 9 5 6 7 8
rigidDiaphragm 3 14 10 11 12 13
rigidDiaphragm 3 19 15 16 17 18
set g 386.4; # Gravitational constant
set m [expr (4*$P)/$g]

# Rotary inertia of floor about master node
set i [expr $m*($bx*$bx+$by*$by)/12.0]

# Set mass at the master nodes
# tag MX MY MZ RX RY RZ
mass 9 $m $m 0 0 0 $i
mass 14 $m $m 0 0 0 $i
mass 19 $m $m 0 0 0 $i


# Constraints for rigid diaphragm master nodes
# tag DX DY DZ RX RY RZ
fix 9 0 0 1 1 1 0
fix 14 0 0 1 1 1 0
fix 19 0 0 1 1 1 0


uniaxialMaterial Concrete01 1 -5.0 -0.005 -3.5 -0.02

# Cover concrete (unconfined)
set fc 4.0
uniaxialMaterial Concrete01 2 -$fc -0.002 0.0 -0.006

# STEEL
# Reinforcing steel
# tag fy E b
uniaxialMaterial Steel01 3 60 30000 0.02

# Column width
set h 18.0

# Call the procedure to generate the column section
# id h b cover core cover steel nBars barArea nfCoreY nfCoreZ nfCoverY nfCoverZ
RCsection 1 $h $h 2.5 1 2 3 3 0.79 8 8 10 10

# Concrete elastic stiffness
set E [expr 57000.0*sqrt($fc*1000)/1000];

# Column torsional stiffness
set GJ 1.0e10;

# Linear elastic torsion for the column
uniaxialMaterial Elastic 10 $GJ

# Attach torsion to the RC column section
# tag uniTag uniCode secTag
section Aggregator 2 10 T -section 1
set colSec 2

# Define column elements
# ----------------------

#set PDelta "ON"
set PDelta "OFF"
# Geometric transformation for columns
if {$PDelta == "ON"} {
# tag vecxz
geomTransf LinearWithPDelta 1 1 0 0
} else {
geomTransf Linear 1 1 0 0
}

# Number of column integration points (sections)
set np 4

# Create the nonlinear column elements
# tag ndI ndJ nPts secID transf
element nonlinearBeamColumn 1 1 5 $np $colSec 1
element nonlinearBeamColumn 2 2 6 $np $colSec 1
element nonlinearBeamColumn 3 3 7 $np $colSec 1
element nonlinearBeamColumn 4 4 8 $np $colSec 1

element nonlinearBeamColumn 5 5 10 $np $colSec 1
element nonlinearBeamColumn 6 6 11 $np $colSec 1
element nonlinearBeamColumn 7 7 12 $np $colSec 1
element nonlinearBeamColumn 8 8 13 $np $colSec 1

element nonlinearBeamColumn 9 10 15 $np $colSec 1
element nonlinearBeamColumn 10 11 16 $np $colSec 1
element nonlinearBeamColumn 11 12 17 $np $colSec 1
element nonlinearBeamColumn 12 13 18 $np $colSec 1

# Define beam elements
# --------------------

# Define material properties for elastic beams
# Using beam depth of 24 and width of 18
# --------------------------------------------
set Abeam [expr 18*24];
# "Cracked" second moments of area
set Ibeamzz [expr 0.5*1.0/12*18*pow(24,3)];
set Ibeamyy [expr 0.5*1.0/12*24*pow(18,3)];

# Define elastic section for beams
# tag E A Iz Iy G J
section Elastic 3 $E $Abeam $Ibeamzz $Ibeamyy $GJ 1.0
set beamSec 3

# Geometric transformation for beams
# tag vecxz
geomTransf Linear 2 1 1 0

# Number of beam integration points (sections)
set np 3

# Create the beam elements
# tag ndI ndJ nPts secID transf
element nonlinearBeamColumn 13 5 6 $np $beamSec 2
element nonlinearBeamColumn 14 6 7 $np $beamSec 2
element nonlinearBeamColumn 15 7 8 $np $beamSec 2
element nonlinearBeamColumn 16 8 5 $np $beamSec 2
element nonlinearBeamColumn 17 10 11 $np $beamSec 2
element nonlinearBeamColumn 18 11 12 $np $beamSec 2
element nonlinearBeamColumn 19 12 13 $np $beamSec 2
element nonlinearBeamColumn 20 13 10 $np $beamSec 2

element nonlinearBeamColumn 21 15 16 $np $beamSec 2
element nonlinearBeamColumn 22 16 17 $np $beamSec 2
element nonlinearBeamColumn 23 17 18 $np $beamSec 2
element nonlinearBeamColumn 24 18 15 $np $beamSec 2

pattern Plain 1 Constant {
foreach node {5 6 7 8 10 11 12 13 15 16 17 18} {
load $node 0.0 0.0 -$p 0.0 0.0 0.0
}
}

}

RCsection.tcl

# Define a procedure which generates a rectangular reinforced concrete section
# with one layer of steel evenly distributed around the perimeter and a confined core.
#
# y
# |
# |
# |
# ---------------------
# |\ /|
# | \---------------/ |
# | | | |
# | | | |
# z ---------| | | | h
# | | | |
# | | | |
# | /---------------\ |
# |/ \|
# ---------------------
# b
#
# Formal arguments
# id - tag for the section that is generated by this procedure
# h - overall height of the section (see above)
# b - overall width of the section (see above)
# cover - thickness of the cover patches
# coreID - material tag for the core patch
# coverID - material tag for the cover patches
# steelID - material tag for the reinforcing steel
# numBars - number of reinforcing bars on any given side of the section
# barArea - cross-sectional area of each reinforcing bar
# nfCoreY - number of fibers in the core patch in the y direction
# nfCoreZ - number of fibers in the core patch in the z direction
# nfCoverY - number of fibers in the cover patches with long sides in the y direction
# nfCoverZ - number of fibers in the cover patches with long sides in the z direction
#
# Notes
# The thickness of cover concrete is constant on all sides of the core.
# The number of bars is the same on any given side of the section.
# The reinforcing bars are all the same size.
# The number of fibers in the short direction of the cover patches is set to 1.
#
proc RCsection {id h b cover coreID coverID steelID numBars barArea nfCoreY nfCoreZ nfCoverY nfCoverZ} {

# The distance from the section z-axis to the edge of the cover concrete
# in the positive y direction
set coverY [expr $h/2.0]

# The distance from the section y-axis to the edge of the cover concrete
# in the positive z direction
set coverZ [expr $b/2.0]

# The negative values of the two above
set ncoverY [expr -$coverY]
set ncoverZ [expr -$coverZ]
# Determine the corresponding values from the respective axes to the
# edge of the core concrete
set coreY [expr $coverY-$cover]
set coreZ [expr $coverZ-$cover]
set ncoreY [expr -$coreY]
set ncoreZ [expr -$coreZ]

# Define the fiber section
section fiberSec $id {

# Define the core patch
patch quadr $coreID $nfCoreZ $nfCoreY $ncoreY $coreZ $ncoreY $ncoreZ $coreY $ncoreZ $coreY $coreZ

# Define the four cover patches
patch quadr $coverID 1 $nfCoverY $ncoverY $coverZ $ncoreY $coreZ $coreY $coreZ $coverY $coverZ
patch quadr $coverID 1 $nfCoverY $ncoreY $ncoreZ $ncoverY $ncoverZ $coverY $ncoverZ $coreY $ncoreZ
patch quadr $coverID $nfCoverZ 1 $ncoverY $coverZ $ncoverY $ncoverZ $ncoreY $ncoreZ $ncoreY $coreZ
patch quadr $coverID $nfCoverZ 1 $coreY $coreZ $coreY $ncoreZ $coverY $ncoverZ $coverY $coverZ

# Define the steel along constant values of y (in the z direction)
layer straight $steelID $numBars $barArea $ncoreY $coreZ $ncoreY $ncoreZ
layer straight $steelID $numBars $barArea $coreY $coreZ $coreY $ncoreZ

# Determine the spacing for the remaining bars in the y direction
set spacingY [expr ($coreY-$ncoreY)/($numBars-1)]

# Avoid double counting bars
set numBars [expr $numBars-2]

# Define remaining steel in the y direction
layer straight $steelID $numBars $barArea [expr $coreY-$spacingY] $coreZ [expr $ncoreY+$spacingY] $coreZ
layer straight $steelID $numBars $barArea [expr $coreY-$spacingY] $ncoreZ [expr $ncoreY+$spacingY] $ncoreZ
}

}

Post Reply