About

People

Users

Heat Transfer

SIFBuilder

Command manual

Examples

Developers

Documents

Q&A

A cantilever beam subjected to temperature rise using shell elements


Introduction

Figure E1-1 shows a 2m beam, only the left half of which is subjected to a uniform temperature increment from 0oC to 1000oC. The right half of the beam keeps ambient temperature and acts as a translational spring to restrain the displacement of the left part. Two beam elements are used in the model. Material class Steel01Thermal is used and the initial modulus of elasticity at 0oC is 200GPa.

Downloading the Example package Here


Geometry

Figure 1: A cantilever beam

This cantilever beam is 2m long. It is made of a rectangual section which is 0.4m in width and 0.1m in thickness.


Tcl script for modelling cantilevel beam using shell elements

wipe;
set ANALYSIS "HasPoint";
set TANALYSIS "Has0Thermo";
model BasicBuilder -ndm 3 -ndf 6
source DisplayPlane.tcl
source DisplayModel2D.tcl
source DisplayModel3D.tcl
set nx 30;
set ny 4;
set slabT 0.1;
set slabB 0.4;

set slabL 3.0;
set gt [expr 3.0e6/1.79e10*3.0e6*2];
set gc [expr 30e6/1.79e10*30e6*6];
nDMaterial CDPPlaneStressThermal 100 1.79e10 0.2 3.0e6 30e6 $gt $gc;
nDMaterial PlateFromPlaneStressThermal 4 100 10e9;

nDMaterial ElasticIsotropic3DThermal 23 1.79e10 0.2 0 2.4e-5 -CSoft;
nDMaterial PlateFiberThermal 24 23;

nDMaterial J2PlaneStressThermal 10 2.06e11 0.3 3.45e8 4.45e8 0 0;
nDMaterial PlateFromPlaneStressThermal 44 10 20e10;
section LayeredShellThermal 2 14 4 0.01 4 0.009607301 3 0.000392699 5 0.000392699 4 0.009607301 4 0.01 4 0.01 4 0.01 4 0.01 4 0.009607301 3 0.000392699 5 0.000392699 4 0.009607301 4 0.01 ;
section LayeredShellThermal 3 12 4 0.01 4 0.00980365 44 0.000392699 4 0.00980365 4 0.01 4 0.01 4 0.01 4 0.01 4 0.00980365 44 0.000392699 4 0.00980365 4 0.01;

#ShellNLDKGQThermal ShellMITC4Thermal ShellMITC4GNLThermal#
block2D $nx $ny 1 1 ShellNLDKGQThermal 2 {
1 0. 0. 0.
2 3 0. 0.
3 3 0.4 0.
4 0. 0.4 0.
}
fixX 0 1 1 1 1 1 1 ;

if {$ANALYSIS == "HasPoint"} {
pattern Plain 1 Linear {
set Load -500;
for {set ID 0} {$ID<=$ny} {incr ID} {
set nodeID [expr ($nx+1)*($ID+1)];
load $nodeID 0 0 [expr $Load/($ny+1)] 0 0 0 ;
}
}
puts "Point";
constraints Plain;
numberer Plain;
system BandGeneral;
test NormDispIncr 1e-3 300 1;
algorithm Newton;
integrator LoadControl 0.1;
analysis Static;
analyze 10;
loadConst -time 0.0
}
if {$TANALYSIS == "HasThermo"} {
puts "Thermal action to slab"
pattern Plain 3 Linear {
eleLoad -range 1 $NumEles -type -shellThermal 1000 [expr -$slabT/2] 0 [expr $slabT/2];
}
constraints Plain;
numberer Plain;
system BandGeneral;
#test NormUnbalance 1.0e-4 10 1;
test NormDispIncr 1e-3 500 1;
algorithm Newton;
integrator LoadControl 0.01;
analysis Static;
analyze 100;
}


Displacement of shell beam

Figure 2: Free-tip displacement under point load
Figure 3: Free-tip dispalcement under thermal action

This page is created by Liming Jiang, 2016