<< Click to Display Table of Contents >> ## Rotated_heat_ring |

{ ROTATED_HEAT_RING.PDE

This example illustrates Extrusion in angle (Rotation), by which a 2D axisymmetric model may be easily converted to 3D.

A rod of conductive material of unit radius and "long" units length

has an imbedded heated ring.

The (x,y) layout is rotated 360 degrees in azimuthal angle, and the extrusion is

divided into four segments (layers) with differing source values.

}

title

"Rotated Heat Ring"

coordinates

xcylinder3

select

automesh= off

ngrid=20

painted

errlim=1e-3

variables

temp(threshold=10)

definitions

k = 0.85 { thermal conductivity }

cp = 1 { heat capacity }

long = 5

H = 2.0-sin(phi) ! 0.4 { free convection boundary coupling - ANGLE DEPENDENT }

Ta = 25 { ambient temperature }

A = 4500 { amplitude }

phimax = 360 degrees

source = A*r

initial value

temp = Ta

equations

temp : div(k*grad(temp)) + source = 0

Rotation

surface phi=0

layer "one"

surface phi=phimax/4

layer "two"

surface phi=phimax/2

layer "three"

surface phi=3*phimax/4

layer "four"

surface phi=phimax

boundaries

region 1

A = 0 { no source in outer material }

start(0,0)

natural(temp) = 0 line to (long,0) { axis }

value(temp) = Ta line to (long,1) { end plane }

value(temp)=Ta line to (2*long/3,1) { fix surface temp at Ta on end third }

natural(temp) = -H*(temp - Ta) line to (long/3,1) { convection cooling on center third }

value(temp)=Ta line to (0,1) { fix surface temp at Ta on first third }

value(temp) = Ta line to close { end plane }

{ the heating ring }

limited region 2

layer 1 A=4500 { first quadrant source }

layer 2 A=1000 { second quadrant source }

layer 3 A=3000 { firthirdst quadrant source }

layer 4 A=0 { fourth quadrant source }

start(long/2,1/2-1/4) { ring has circular cross-section }

arc(center=long/2,1/2) angle=360

plots

grid(x,y,z) on layers "one", "three", "four" paintregions

glgrid(x,y,z) on layers "one", "three", "four" paintregions

glcontour(temp) as "Rotatable surface temp"

glcontour(temp) on region 2 nolines as "Rotatable heat ring temp"

glcontour(temp) on region 2 on layer 2 as "Rotatable heat ring temp in second quadrant"

glcontour(-H*(temp-Ta)) as "Surface Loss H*(Temp-Ta)" report("H = 2.0-sin(phi)")

elevation(temp) from (0,0) to (long,0) as "Axis Temp" { trace temp on axis }

contour(temp) on x=long/2 as "Temp cros-section"

contour(temp) on phi = phimax/3 as "Temp slice at phi=120"

contour(magnitude(grad(temp))) on x=long/2 as "Cartesian Gradient on cross-section"

contour(magnitude(vector(dx(temp),dr(temp),dphi(temp)/r))) on x=long/2 as "Polar-Coordinate Gradient on cross-section"

contour(magnitude(grad(temp))) on phi=phimax/2 as "Gradient slice at phi=180"

contour(magnitude(grad(temp))) on phi=0 as "Gradient slice at phi=0"

contour(k*dr(temp)) on x=long/2 as "Radial flux"

contour(dr(temp)) on x=long/2 as "Radial derivative"

contour(drr(temp)) on x=long/2 as "Radial curvature"

contour(dphi(temp)/r) on x=long/2 as "Azimuthal derivative"

vector(-grad(temp)) on x=long/2 as "Cartesian gradient on cross-section"

contour(source) on x=long/2

grid(y,z) on x=long/2 paintregions as "Grid cross-section by region"

grid(y,z) on x=long/2 paintmaterials as "Grid cross-section by material"

grid(x,y) on phi=0 as "Grid on X,Y slice at phi=0"

grid(x,r) on phi=0 as "Grid on X,R slice at phi=0"

contour(source) on phi = pi/4

contour(source) on phi = 3*pi/4

summary

report(integral(source))

report(sintegral(-k*normal(grad(temp))))

end