linear load pattern for self-weight
Moderators: silvia, selimgunay, Moderators
linear load pattern for self-weight
Hi,
Is there any way to apply self-weight in linear load pattern manner?
I'm using quadUP element at the moment, but this is an issue for other elements (e.g., 9_4nodequadUP, brick, brickUP). When I assign self-weight to an element and run analysis, self-weight is applied instantly. Is there any way to control application of self-weight other than 'applying loads mimicking self-weigh (for which load pattern could be linear)'?
Thanks
Is there any way to apply self-weight in linear load pattern manner?
I'm using quadUP element at the moment, but this is an issue for other elements (e.g., 9_4nodequadUP, brick, brickUP). When I assign self-weight to an element and run analysis, self-weight is applied instantly. Is there any way to control application of self-weight other than 'applying loads mimicking self-weigh (for which load pattern could be linear)'?
Thanks
Re: linear load pattern for self-weight
how exactly are you applying the self weight?
Re: linear load pattern for self-weight
Thanks for your reply,
I assign gravity to quadUP elements, density to material and then run analysis
I assign gravity to quadUP elements, density to material and then run analysis
Re: linear load pattern for self-weight
I still have not resolved the problem, but a colleague suggested to use eleLoad load pattern. So here is what I do now:
- add elements using:
element quadUP $elTag $n1 $n2 $n3 $n4 $thick $matTag $bulk $fmass $hPerm $vPerm $gx=0 $gy=0 $t=0
- add load pattern using:
pattern Plain 1 {Series -time {0 5000 1e10} -values {0 1 1} -factor 1} {
eleLoad -ele $elTag -type -selfWeight $gx=0 $gy=g
}
- analyze using:
analyze $nsteps=10 $dT=5e2
at the end of analysis stresses are 0.0s.
If I assign $gy=g while adding material, stresses are applied instantly at the first increment.
Do I use elLoad command properly for selfWeight? I checked in debugging and it does generate eleLoad, but I couldn't figure out if $gx=0 and $gy=g are actually used. Maybe I am not assigning gravities properly?
Do I actually need to assign gravity while adding quadUP element and then again using eleLoad?
I would appreciate any help on this!
- add elements using:
element quadUP $elTag $n1 $n2 $n3 $n4 $thick $matTag $bulk $fmass $hPerm $vPerm $gx=0 $gy=0 $t=0
- add load pattern using:
pattern Plain 1 {Series -time {0 5000 1e10} -values {0 1 1} -factor 1} {
eleLoad -ele $elTag -type -selfWeight $gx=0 $gy=g
}
- analyze using:
analyze $nsteps=10 $dT=5e2
at the end of analysis stresses are 0.0s.
If I assign $gy=g while adding material, stresses are applied instantly at the first increment.
Do I use elLoad command properly for selfWeight? I checked in debugging and it does generate eleLoad, but I couldn't figure out if $gx=0 and $gy=g are actually used. Maybe I am not assigning gravities properly?
Do I actually need to assign gravity while adding quadUP element and then again using eleLoad?
I would appreciate any help on this!
Re: linear load pattern for self-weight
Here's how I did it:
##################################################
# Wipe everything
wipe
# Create the model
model BasicBuilder -ndm 3 -ndf 3;
# Define nodes
node 1 0.0 0.0 0.0
node 2 1.0 0.0 0.0
node 3 1.0 1.0 0.0
node 4 0.0 1.0 0.0
node 5 0.0 0.0 1.0
node 6 1.0 0.0 1.0
node 7 1.0 1.0 1.0
node 8 0.0 1.0 1.0
# Define constraints
fix 1 1 1 1
fix 2 0 1 1
fix 3 0 0 1
fix 4 1 0 1
fix 5 1 1 0
fix 6 0 1 0
fix 7 0 0 0
fix 8 1 0 0
# Define Material
nDMaterial ElasticIsotropic 1 100000.0 0.25 1.0
# Define elements
element SSPbrick 1 1 2 3 4 5 6 7 8 1 0 0 -9.8
# Create element recorders
recorder Element -file stress.out -time -ele 1 stress
recorder Element -file strain.out -time -ele 1 strain
# Define loading
pattern Plain 1 Linear {
eleLoad -ele 1 -type -selfWeight 1.0 1.0 1.0
}
constraints Transformation
test NormDispIncr 1.0e-7 10 1
algorithm Newton
numberer RCM
system BandGeneral
integrator LoadControl 0.25
analysis Static
analyze 4
################################################
I hope this solves the problem.
##################################################
# Wipe everything
wipe
# Create the model
model BasicBuilder -ndm 3 -ndf 3;
# Define nodes
node 1 0.0 0.0 0.0
node 2 1.0 0.0 0.0
node 3 1.0 1.0 0.0
node 4 0.0 1.0 0.0
node 5 0.0 0.0 1.0
node 6 1.0 0.0 1.0
node 7 1.0 1.0 1.0
node 8 0.0 1.0 1.0
# Define constraints
fix 1 1 1 1
fix 2 0 1 1
fix 3 0 0 1
fix 4 1 0 1
fix 5 1 1 0
fix 6 0 1 0
fix 7 0 0 0
fix 8 1 0 0
# Define Material
nDMaterial ElasticIsotropic 1 100000.0 0.25 1.0
# Define elements
element SSPbrick 1 1 2 3 4 5 6 7 8 1 0 0 -9.8
# Create element recorders
recorder Element -file stress.out -time -ele 1 stress
recorder Element -file strain.out -time -ele 1 strain
# Define loading
pattern Plain 1 Linear {
eleLoad -ele 1 -type -selfWeight 1.0 1.0 1.0
}
constraints Transformation
test NormDispIncr 1.0e-7 10 1
algorithm Newton
numberer RCM
system BandGeneral
integrator LoadControl 0.25
analysis Static
analyze 4
################################################
I hope this solves the problem.
Re: linear load pattern for self-weight
works just right! Thank you alborzgh!