hello
I need some static structural reliability example and FORM Analysis command.
please let me some example.
thanks
FORM Analysis
Moderators: silvia, selimgunay, mhscott, Moderators
-
- Posts: 7
- Joined: Mon Dec 04, 2017 5:02 am
- Location: Your account has been created. However, this board requires account activation, an activation key ha
Re: FORM Analysis
I want to know about FORM Analysis option.
-
- Posts: 7
- Joined: Mon Dec 04, 2017 5:02 am
- Location: Your account has been created. However, this board requires account activation, an activation key ha
Re: FORM Analysis
Hi
I am looking for help on the code I have which include the reliability analysis.
The problem I have is gradient value of RV with tag 1 is zero.
Can you explain why the problem express?
model BasicBuilder -ndm 2 -ndf 2
# Create nodes
# ------------
set len [expr 100*sqrt(2)]
# Create nodes & add to Domain - command: node nodeId xCrd yCrd
node 1 0.0 0.0
node 2 110 0.0
node 3 220 0
node 4 330 0
node 5 440 0
node 6 110 110
node 7 220 110
node 8 330 110
# Set the boundary conditions - command: fix nodeID xResrnt? yRestrnt?
fix 1 1 1 0;
fix 2 0 0 0
fix 3 0 0 0
fix 4 0 0 0
fix 5 0 0 0
fix 6 1 0 0
fix 7 0 0 0
fix 8 0 0 0
# Define materials for truss elements
# -----------------------------------
# Create Elastic material prototype - command: uniaxialMaterial Elastic matID E
uniaxialMaterial Elastic 1 7063200
# Define elements
# ---------------
# Create truss elements - command: element truss trussID node1 node2 A matID
element Truss 1 1 2 250 1
element Truss 2 2 3 250 1
element Truss 3 3 4 250 1
element Truss 4 4 5 250 1
element Truss 5 6 7 250 1
element Truss 6 7 8 250 1
element Truss 7 1 6 250 1
element Truss 8 2 6 250 1
element Truss 9 3 6 260 1
element Truss 10 3 7 240 1
element Truss 11 3 8 240 1
element Truss 12 4 8 240 1
element Truss 13 5 8 240 1
# Define loads
# ------------
#create a Linear TimeSeries (load factor varies linearly with time): command timeSeries Linear $tag
timeSeries Linear 1
# Create a Plain load pattern with a linear TimeSeries: command pattern Plain $tag $timeSeriesTag { $loads }
pattern Plain 1 1 {
# Create the nodal load - command: load nodeID xForce yForce
load 7 0 -50
}
# ------------------------------
# Start of analysis generation
# ------------------------------
# Create the system of equation, a SPD using a band storage scheme
system BandSPD
# Create the DOF numberer, the reverse Cuthill-McKee algorithm
numberer RCM
# Create the constraint handler, a Plain handler is used as homo constraints
constraints Plain
# Create the integration scheme, the LoadControl scheme using steps of 1.0
integrator LoadControl 1.0
# Create the solution algorithm, a Linear algorithm is created
algorithm Linear
# create the analysis object
analysis Static
# ------------------------------
# Start of recorder generation
# ------------------------------
# create a Recorder object for the nodal displacements at node 7
recorder Node -file node7.txt -time -node 7 -dof 1 2 -precision 16 disp
# Create a recorder for element forces, one in global and the other local system
recorder Element -file eledisp.txt -time -ele 1 2 3 disp
recorder Element -file eleGlobalforce.txt -time -ele 1 2 3 forces
recorder Element -file eleLocal.txt -time -ele 1 2 3 basicForces
# ------------------------------
# Finally perform the analysis
# ------------------------------
# Perform the analysis
analyze 1
# ------------------------------
# Print Stuff to Screen
# ------------------------------
# Print the current state at node 4 and at all elements
puts "done"
reliability
set M 250
randomVariable 1 normal -mean $M -sdv [expr $M*0.1]
randomVariable 2 normal -mean $M -sdv [expr $M*0.1]
randomVariable 3 normal -mean $M -sdv [expr $M*0.1]
randomVariable 4 normal -mean $M -sdv [expr $M*0.1]
parameter 1 randomVariable 1 element 1 A
parameter 2 randomVariable 2 element 2 A
parameter 3 randomVariable 3 element 3 A
parameter 4 randomVariable 4 element 4 A
set Nsteps [expr int(1.0/0.01)]
performanceFunction 1 "3e-5-\[nodeDisp 7 2\]"
randomNumberGenerator CStdLib
probabilityTransformation Nataf -print 3
reliabilityConvergenceCheck Standard -e1 1.0e-2 -e2 1.0e-2 -print 1
functionEvaluator Tcl -file "analyze $Nsteps"
gradientEvaluator FiniteDifference
gradientEvaluator Implicit
searchDirection iHLRF
meritFunctionCheck AdkZhang -multi 2.0 -add 10.0 -factor 0.5
stepSizeRule Armijo -maxNum 10 -base 0.5 -initial 0.3 5
stepSizeRule Fixed -stepSize 1.0
startPoint Mean
findDesignPoint StepSearch -maxNumIter 15 -printDesignPointX designPointX.out
runFORMAnalysis industrialFrame.out
puts "done"
I am looking for help on the code I have which include the reliability analysis.
The problem I have is gradient value of RV with tag 1 is zero.
Can you explain why the problem express?
model BasicBuilder -ndm 2 -ndf 2
# Create nodes
# ------------
set len [expr 100*sqrt(2)]
# Create nodes & add to Domain - command: node nodeId xCrd yCrd
node 1 0.0 0.0
node 2 110 0.0
node 3 220 0
node 4 330 0
node 5 440 0
node 6 110 110
node 7 220 110
node 8 330 110
# Set the boundary conditions - command: fix nodeID xResrnt? yRestrnt?
fix 1 1 1 0;
fix 2 0 0 0
fix 3 0 0 0
fix 4 0 0 0
fix 5 0 0 0
fix 6 1 0 0
fix 7 0 0 0
fix 8 0 0 0
# Define materials for truss elements
# -----------------------------------
# Create Elastic material prototype - command: uniaxialMaterial Elastic matID E
uniaxialMaterial Elastic 1 7063200
# Define elements
# ---------------
# Create truss elements - command: element truss trussID node1 node2 A matID
element Truss 1 1 2 250 1
element Truss 2 2 3 250 1
element Truss 3 3 4 250 1
element Truss 4 4 5 250 1
element Truss 5 6 7 250 1
element Truss 6 7 8 250 1
element Truss 7 1 6 250 1
element Truss 8 2 6 250 1
element Truss 9 3 6 260 1
element Truss 10 3 7 240 1
element Truss 11 3 8 240 1
element Truss 12 4 8 240 1
element Truss 13 5 8 240 1
# Define loads
# ------------
#create a Linear TimeSeries (load factor varies linearly with time): command timeSeries Linear $tag
timeSeries Linear 1
# Create a Plain load pattern with a linear TimeSeries: command pattern Plain $tag $timeSeriesTag { $loads }
pattern Plain 1 1 {
# Create the nodal load - command: load nodeID xForce yForce
load 7 0 -50
}
# ------------------------------
# Start of analysis generation
# ------------------------------
# Create the system of equation, a SPD using a band storage scheme
system BandSPD
# Create the DOF numberer, the reverse Cuthill-McKee algorithm
numberer RCM
# Create the constraint handler, a Plain handler is used as homo constraints
constraints Plain
# Create the integration scheme, the LoadControl scheme using steps of 1.0
integrator LoadControl 1.0
# Create the solution algorithm, a Linear algorithm is created
algorithm Linear
# create the analysis object
analysis Static
# ------------------------------
# Start of recorder generation
# ------------------------------
# create a Recorder object for the nodal displacements at node 7
recorder Node -file node7.txt -time -node 7 -dof 1 2 -precision 16 disp
# Create a recorder for element forces, one in global and the other local system
recorder Element -file eledisp.txt -time -ele 1 2 3 disp
recorder Element -file eleGlobalforce.txt -time -ele 1 2 3 forces
recorder Element -file eleLocal.txt -time -ele 1 2 3 basicForces
# ------------------------------
# Finally perform the analysis
# ------------------------------
# Perform the analysis
analyze 1
# ------------------------------
# Print Stuff to Screen
# ------------------------------
# Print the current state at node 4 and at all elements
puts "done"
reliability
set M 250
randomVariable 1 normal -mean $M -sdv [expr $M*0.1]
randomVariable 2 normal -mean $M -sdv [expr $M*0.1]
randomVariable 3 normal -mean $M -sdv [expr $M*0.1]
randomVariable 4 normal -mean $M -sdv [expr $M*0.1]
parameter 1 randomVariable 1 element 1 A
parameter 2 randomVariable 2 element 2 A
parameter 3 randomVariable 3 element 3 A
parameter 4 randomVariable 4 element 4 A
set Nsteps [expr int(1.0/0.01)]
performanceFunction 1 "3e-5-\[nodeDisp 7 2\]"
randomNumberGenerator CStdLib
probabilityTransformation Nataf -print 3
reliabilityConvergenceCheck Standard -e1 1.0e-2 -e2 1.0e-2 -print 1
functionEvaluator Tcl -file "analyze $Nsteps"
gradientEvaluator FiniteDifference
gradientEvaluator Implicit
searchDirection iHLRF
meritFunctionCheck AdkZhang -multi 2.0 -add 10.0 -factor 0.5
stepSizeRule Armijo -maxNum 10 -base 0.5 -initial 0.3 5
stepSizeRule Fixed -stepSize 1.0
startPoint Mean
findDesignPoint StepSearch -maxNumIter 15 -printDesignPointX designPointX.out
runFORMAnalysis industrialFrame.out
puts "done"