Finding Electric Potential Gradient in 3D FEM Mesh

Click For Summary
SUMMARY

The discussion focuses on calculating the electric potential gradient (∇∅) in a 3D finite element mesh to derive electric current density (i) using the relationship i = k ∇∅. The participants emphasize the importance of using element shape functions for gradient calculation and suggest averaging methods to address discontinuities at node intersections. The conversation highlights that while traditional methods may suit structured meshes, unstructured meshes require tailored approaches, such as those proposed by AlphaZero. The necessity of averaging gradients for accurate node values is underscored, particularly in the context of finite element analysis in electromagnetism.

PREREQUISITES
  • Understanding of finite element method (FEM) principles
  • Familiarity with electric potential and current density relationships
  • Knowledge of C programming for implementing numerical methods
  • Experience with element shape functions in FEM
NEXT STEPS
  • Research "Finite Element Method for Electromagnetism" to understand specific applications
  • Learn about "Gradient Calculation in Unstructured Meshes" for tailored approaches
  • Explore "Averaging Techniques in FEM" to improve accuracy in gradient calculations
  • Investigate "Variational Principles in Finite Element Analysis" for advanced formulations
USEFUL FOR

Electrical engineers, computational physicists, and researchers involved in finite element analysis of electromagnetic fields will benefit from this discussion.

Stacky
Messages
8
Reaction score
0
Hello,
The value of electric potential(∅) is known at every node in a 3d finite element mesh. The relation between electric current density(i) and electric potential(∅) is i=k.∇∅, I am writing a code in c, I want to know how to find the gradient of electric potential(∇∅) at every node so as to get current density(i). Please help.
 
Engineering news on Phys.org
If we subscript the nodes using i,j,k then the bilinear approximation would be,

J_x = \frac{\sigma}{2 \Delta} \left[ V_{(i-1),j,k} - V_{(i+1),j,k} \right]

and similarly for the y and z components.
 
The OP said a finite element mesh. The previous answer looks more appropriate for a regular finite differnce mesh, not an FE mesh with arbitrary geometry.

You can calculate the gradient at each node of each element using the element shape functions. (This will be similar, but simpler, than calculating strains from displacements in a structural FE program).

The problem is that the only output that is consistent with the FE method is gradient averaged over the volume of each element. When several elements meet at a node, you will get a different gradient value at the node for each of the elements.

If you just want to plot the data you can do something fairly simple, for example average of the different nodal values (possibly weighted by the volume of the elements). Or you can use the difference between the element values at each node as a measure of the accuracy of the solution.

If you want to do some mathematical post processing using the gradients, it would be better to do it based on the value within the volume of each element, rather than some more or less arbitrary nodal averaging method.
 
Ok, it looks like I was over-simplifying it by assuming it was a rectangular grid.

BTW Stacky. The electric field is E = - \nabla \phi, so it should be J = - \sigma (\nabla \phi)
 
Method suggested by uart is correct, but it suits a regular structured rectangular mesh. Because I am dealing with unstructured mesh, I would prefer to use the method proposed by AlphaZero. Thanks both for their inputs.
Neverthless in strict sense ∇∅ is an elemental solution and we need to use some averaging method to calculate its value at nodes.
 
Stacky said:
Neverthless in strict sense ∇∅ is an elemental solution and we need to use some averaging method to calculate its value at nodes.

I would rephrase that as "the FE approximation for ∇∅ is discontinuous across the element boundaries". Whether you "need" to get rid of the discontinuities depends what you want to use the solution for.

If you really don't want discontinuities, you could formulate an element with a different variational principle so the gradients are nodal variables. That has been done for structural analysis (but few people actually use those element formulations). I don't have any hands-on experiemnce of FE methods in electromagnetism and I don't know what the state of the art is in that field.
 

Similar threads

  • · Replies 7 ·
Replies
7
Views
1K
Replies
5
Views
4K
Replies
8
Views
4K
  • · Replies 0 ·
Replies
0
Views
1K
  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 2 ·
Replies
2
Views
1K
Replies
22
Views
3K