<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
span.EmailStyle17
{mso-style-type:personal-compose;
font-family:"Calibri","sans-serif";
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;}
@page Section1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.Section1
{page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-US link=blue vlink=purple>
<div class=Section1>
<p class=MsoNormal>Hello! What a wonderful tool GetDP is - if only I knew
how to use it!<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>I am trying to solve an electrical conduction problem, a
simplified version of which I present here. I have a conducting bar, with
two contacts held at fixed potential. I have no trouble calculating
scalar voltage, E field and current density. I am struggling, though,
with integrating the current density over a cross-section of the bar to measure
total current. I have set up the bar 1cm dia and 10cm long, with half on
either side of the X-Z plane. I can integrate 1 over the cross section at
the X-Z plane and correctly derive the cross-sectional area of the bar (after
correcting with 2pi geometry factor for global quantity inAxiSymmetric problem).
When I try to integrate current, I get 0 as a result - because E field isn't
defined on the line element I use as my cross-section cut-plane. I am not
sure how to resolve this - either how to get E field (thus, current) defined on
the cut-plane or define the integration differently. Any help is greatly
appreciated - thank you!<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Daniel Morris<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/*-------------------------------------<o:p></o:p></p>
<p class=MsoNormal> Bar.geo<o:p></o:p></p>
<p class=MsoNormal> Geometry of simple conducting bar<o:p></o:p></p>
<p class=MsoNormal>--------------------------------------*/<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Include "BarPar.pro";<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Conducting bar dimensions */<o:p></o:p></p>
<p class=MsoNormal>BarDia = 0.010; // Bar diameter 1.0cm<o:p></o:p></p>
<p class=MsoNormal>BarLen = 0.100; // Bar length
10.0cm<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Mesh size parameters */<o:p></o:p></p>
<p class=MsoNormal>MeshScale = 1.0/10.0; // General scaling
parameter<o:p></o:p></p>
<p class=MsoNormal>lmEnd = (BarDia/2)*MeshScale;<o:p></o:p></p>
<p class=MsoNormal>lmMid = (BarDia/2)*MeshScale;<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Names for physical objects */<o:p></o:p></p>
<p class=MsoNormal>CONDUCTOR = 1000;<o:p></o:p></p>
<p class=MsoNormal>ELECPOS = 1001;<o:p></o:p></p>
<p class=MsoNormal>ELECNEG = 1002;<o:p></o:p></p>
<p class=MsoNormal>CUTPLANE = 1010;<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Point(1) =
{ 0, BarLen/2,
0, lmEnd };<o:p></o:p></p>
<p class=MsoNormal>Point(2) = { BarDia/2, BarLen/2,
0, lmEnd };<o:p></o:p></p>
<p class=MsoNormal>Point(3) = {
BarDia/2, 0, 0,
lmMid };<o:p></o:p></p>
<p class=MsoNormal>Point(4) = { BarDia/2, -BarLen/2, 0,
lmEnd };<o:p></o:p></p>
<p class=MsoNormal>Point(5) =
{ 0, -BarLen/2,
0, lmEnd };<o:p></o:p></p>
<p class=MsoNormal>Point(6) =
{
0, 0, 0, lmMid };<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Line(101) = {1, 2};<o:p></o:p></p>
<p class=MsoNormal>Line(102) = {2, 3};<o:p></o:p></p>
<p class=MsoNormal>Line(103) = {3, 4};<o:p></o:p></p>
<p class=MsoNormal>Line(104) = {4, 5};<o:p></o:p></p>
<p class=MsoNormal>Line(105) = {5, 6};<o:p></o:p></p>
<p class=MsoNormal>Line(106) = {6, 1};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Line(110) = {6, 3};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Line Loop(200) = {101, 102, 103, 104, 105, 106};<o:p></o:p></p>
<p class=MsoNormal>Plane Surface(300) = {200}; // Conductor<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/**** Physical Surfaces and Lines ****/<o:p></o:p></p>
<p class=MsoNormal>// Physical Surface used to represent the Conductor<o:p></o:p></p>
<p class=MsoNormal>Physical Surface(CONDUCTOR) = {300};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>// Physical Line used to represent the Positive Electrode<o:p></o:p></p>
<p class=MsoNormal>Physical Line(ELECPOS) = {101};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>// Physical Line used to represent the Negative Electrode<o:p></o:p></p>
<p class=MsoNormal>Physical Line(ELECNEG) = {104};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>// Physical Line used to determine cross sectional area and
total current<o:p></o:p></p>
<p class=MsoNormal>Physical Line(CUTPLANE) = {110};<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/*----------------------------------------<o:p></o:p></p>
<p class=MsoNormal> BarPar.pro <o:p></o:p></p>
<p class=MsoNormal> Parameters describing conducting bar<o:p></o:p></p>
<p class=MsoNormal>--------------------------------------- */<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Conducting bar dimensions */<o:p></o:p></p>
<p class=MsoNormal>BarDia = 0.010; // Bar diameter 1.0cm<o:p></o:p></p>
<p class=MsoNormal>BarLen = 0.100; // Bar length
10.0cm<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Conducting bar physical properties */<o:p></o:p></p>
<p class=MsoNormal>RhoBar = 0.70; // Conductivity of material
[Ohm-m]<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Mesh size parameters */<o:p></o:p></p>
<p class=MsoNormal>MeshScale = 1.0/10.0; // General scaling
parameter<o:p></o:p></p>
<p class=MsoNormal>lmEnd = (BarDia/2)*MeshScale;<o:p></o:p></p>
<p class=MsoNormal>lmMid = (BarDia/2)*MeshScale;<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Factor for integration in axisymmetric geometry */<o:p></o:p></p>
<p class=MsoNormal>CoeffGeo = 2.0*Pi;<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/* Names for physical objects */<o:p></o:p></p>
<p class=MsoNormal>CONDUCTOR = 1000;<o:p></o:p></p>
<p class=MsoNormal>ELECPOS = 1001;<o:p></o:p></p>
<p class=MsoNormal>ELECNEG = 1002;<o:p></o:p></p>
<p class=MsoNormal>CUTPLANE = 1010;<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/*----------------------------------------------------------------------<o:p></o:p></p>
<p class=MsoNormal> Bar.pro<o:p></o:p></p>
<p class=MsoNormal> This file solves DC
Conduction in a simple round bar<o:p></o:p></p>
<p class=MsoNormal>----------------------------------------------------------------------*/<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Include "BarPar.pro";<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Group {<o:p></o:p></p>
<p class=MsoNormal> Conductor =
Region[CONDUCTOR];<o:p></o:p></p>
<p class=MsoNormal> ElectrodePos = Region[ELECPOS];<o:p></o:p></p>
<p class=MsoNormal> ElectrodeNeg = Region[ELECNEG];<o:p></o:p></p>
<p class=MsoNormal> CutPlane =
Region[CUTPLANE];<o:p></o:p></p>
<p class=MsoNormal> Conductors =
Region[{Conductor, ElectrodePos, ElectrodeNeg}];<o:p></o:p></p>
<p class=MsoNormal> SigmaDefined =
Region[{Conductor,CutPlane}];<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Function {<o:p></o:p></p>
<p class=MsoNormal> Sigma[ SigmaDefined ] =
1.0/RhoBar; // Material conductivity<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Constraint {<o:p></o:p></p>
<p class=MsoNormal> { Name VoltScalarPotential; Type Assign;<o:p></o:p></p>
<p class=MsoNormal> Case{<o:p></o:p></p>
<p class=MsoNormal> { Region
ElectrodePos; Value 1.0; }<o:p></o:p></p>
<p class=MsoNormal> { Region
ElectrodeNeg; Value 0.0; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Jacobian {<o:p></o:p></p>
<p class=MsoNormal> { Name JVol; Case { { Region All; Jacobian VolAxi; }
} }<o:p></o:p></p>
<p class=MsoNormal> { Name JSur; Case { { Region All; Jacobian SurAxi; }
} }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Integration {<o:p></o:p></p>
<p class=MsoNormal> { Name GaussInt;<o:p></o:p></p>
<p class=MsoNormal> Case { { Type Gauss;<o:p></o:p></p>
<p class=MsoNormal>
Case { { GeoElement Triangle ; NumberOfPoints 4; }<o:p></o:p></p>
<p class=MsoNormal>
{ GeoElement Line ; NumberOfPoints 4;
}<o:p></o:p></p>
<p class=MsoNormal>
{ GeoElement Quadrangle ; NumberOfPoints 4; }<o:p></o:p></p>
<p class=MsoNormal> {
GeoElement Tetrahedron ; NumberOfPoints 4; }<o:p></o:p></p>
<p class=MsoNormal>
{ GeoElement Hexahedron ; NumberOfPoints 6; }<o:p></o:p></p>
<p class=MsoNormal>
{ GeoElement Prism ; NumberOfPoints 9; } }<o:p></o:p></p>
<p class=MsoNormal>
}<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>FunctionSpace {<o:p></o:p></p>
<p class=MsoNormal> { Name Vgrad; Type Form0;<o:p></o:p></p>
<p class=MsoNormal> BasisFunction {<o:p></o:p></p>
<p class=MsoNormal> { Name sn; NameOfCoef tn;
Function BF_Node;<o:p></o:p></p>
<p class=MsoNormal> Support
Region[{Conductors}]; Entity NodesOf[ All ]; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> Constraint {<o:p></o:p></p>
<p class=MsoNormal> { NameOfCoef tn; EntityType
NodesOf; NameOfConstraint VoltScalarPotential; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Formulation {<o:p></o:p></p>
<p class=MsoNormal> { Name Voltage_Steady ; Type FemEquation ;<o:p></o:p></p>
<p class=MsoNormal> Quantity { <o:p></o:p></p>
<p class=MsoNormal> { Name Volt; Type Local;
NameOfSpace Vgrad; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> Equation {<o:p></o:p></p>
<p class=MsoNormal> Galerkin { [ Sigma[] *
Dof {d Volt}, {d Volt} ]; <o:p></o:p></p>
<p class=MsoNormal>
In Conductors; Jacobian JVol; Integration GaussInt; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>Resolution {<o:p></o:p></p>
<p class=MsoNormal> { Name Voltage_Steady ;<o:p></o:p></p>
<p class=MsoNormal> System {<o:p></o:p></p>
<p class=MsoNormal> { Name AA ; NameOfFormulation
Voltage_Steady ; }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> Operation { <o:p></o:p></p>
<p class=MsoNormal> Generate[AA]; Solve[AA];
SaveSolution[AA]; <o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>PostProcessing {<o:p></o:p></p>
<p class=MsoNormal> { Name VoltSteady; NameOfFormulation
Voltage_Steady ;<o:p></o:p></p>
<p class=MsoNormal> Quantity {<o:p></o:p></p>
<p class=MsoNormal> { Name Volt;
Value { Local { [ {Volt} ]; In Conductor; Jacobian JVol; } } }<o:p></o:p></p>
<p class=MsoNormal> { Name eField; Value { Local
{ [ -{Grad Volt} ]; In Conductor; Jacobian JVol; } } }<o:p></o:p></p>
<p class=MsoNormal> { Name eNorm; Value {
Local { [Norm[ -{Grad Volt} ]]; In Conductor; Jacobian JVol; } } }<o:p></o:p></p>
<p class=MsoNormal> { Name jNorm; Value {
Local { [Norm[ -Sigma[] * {Grad Volt} ]]; In Conductor; Jacobian JVol; } } }<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/*-------------------------------- This integration
correctly calculates the cross-sectional area of the bar ---------------------------*/<o:p></o:p></p>
<p class=MsoNormal> { Name surf;
Value { Integral { [1*CoeffGeo]; In CutPlane; Integration GaussInt; Jacobian
JSur; } } }<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>/*-------------------------------- This integration fails to
correctly calculate total current in the bar: eField (Grad Volt) not defined in
Cutplane so result is zero -------------*/<o:p></o:p></p>
<p class=MsoNormal> { Name cur;
Value { Integral { [-{Grad Volt}*Vector[0,1,0]*CoeffGeo*Sigma[]]; In CutPlane;
Integration GaussInt; Jacobian JSur; } } }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal>PostOperation {<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal> { Name VoltSteady ; NameOfPostProcessing VoltSteady;<o:p></o:p></p>
<p class=MsoNormal> Operation {<o:p></o:p></p>
<p class=MsoNormal> Print[
Volt, OnElementsOf Conductors, File "BarVolt.pos"];<o:p></o:p></p>
<p class=MsoNormal> Print[ eField,
OnElementsOf Conductors, File "BarEField.pos"];<o:p></o:p></p>
<p class=MsoNormal> Print[
eNorm, OnElementsOf Conductors, File "BarEFieldNorm.pos"];<o:p></o:p></p>
<p class=MsoNormal> Print[
jNorm, OnElementsOf Conductors, File "BarcurrDensity.pos"];<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
<p class=MsoNormal> Print[
surf[CutPlane], OnGlobal, File "surf.txt", Format Table]; //
Cross-sectional area<o:p></o:p></p>
<p class=MsoNormal> Print[
cur[CutPlane], OnGlobal, File "current.txt", Format
Table]; // current<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal> }<o:p></o:p></p>
<p class=MsoNormal>}<o:p></o:p></p>
<p class=MsoNormal><o:p> </o:p></p>
</div>
<BR><BR>__________ Information from ESET NOD32 Antivirus, version of virus signature database 4780 (20100117) __________<BR><BR>The message was checked by ESET NOD32 Antivirus.<BR><BR><A HREF="http://www.eset.com">http://www.eset.com</A><BR> </body>
</html>