I'm looking for software recommendations for an electrostatic simulation:

I have a 3d object of uniform, high conductivity, separated from its environment by a high-resistance skin. Inside that object is a dipole, and I want to calculate the strength of the dipole's generated electric field on the surface of the object.

I've been working with a colleague's old thesis, in which he develops an approach to solve for the field using FEM/BEM. I've coded up his BEM solver in Matlab, but it's quite slow to run, and I'm not convinced I'm getting the right answer. I wouldn't be surprised if there was a tool for this already out there, but I haven't had much luck finding one so far. Any suggestions? I already have the mesh (which has ~3300 vertices, though I can edit this), I just want to pop it in with some conductivities and a dipole location, and get back the field on the surface of the mesh.

(For those curious: I study a species of fish that generates electric fields, and uses perturbations in these fields to detect objects in its environment; I want to do some simulations to get a better sense of what the sensory signal at the skin actually looks like.)

  • $\begingroup$ Is this by any chance related to reconstructing the current dipole located in the human heart by picking up electric potential on the skin? I worked on that problem some years ago... $\endgroup$ – Maxim Umansky May 18 '14 at 6:18
  • $\begingroup$ It's a little bit the opposite: I want to take a mesh containing a dipole and model the predicted potential on the skin. (I do have some data I use to fit where I place the dipole, but not enough to do anything fancy so in practice I just place it by hand.) $\endgroup$ – gallmoth May 21 '14 at 15:26

I'd write this down as a comment had I the necessary reputation, but here goes my suggestion (on a side note, do you have any references for fish electrostatics? Sounds interesting).

I'm surprised to see that you were coding up your own solver from scratch for production. When it comes to real systems, especially something like a fish with probably a really intricate geometry and complicated boundary conditions, I usually tend to go with ready-made software (assuming they have all the necessary features, or that I am familiar enough with the source that I can code them up where missing). This is not to say that they are always particularly easy to use, though, but they should be fast and reliable.

So when I was doing (rather simple) electrostatics calculations a couple of years back, I used the software GetDP to solve the equations, and the associated Gmsh to generate the meshes/geometries. The usage is simple enough through a GUI but when it comes to defining the equations to solve (the .pro file), you will need to read the manual and/or look through some examples. This might take a couple of moments or more. The official website itself does not have that many on electrostatics, but Google searches seemed to land a couple (e.g. this). I'm sure there are other software packages that are easier to use with more out of the box solutions, but this package is very general and maybe of some use even if you work outside electromagnetic calculations.

  • $\begingroup$ Thanks, I'll give GetDP a shot. The only real reason I was coding up my own solver is that I had a detailed outline to work from in this thesis I'm reading-- it was written in 97, so probably there weren't as many ready-made options available. (And as for fish electrostatics, this group maybe gives an idea: they study fish electrolocation to develop biomimetic electric sensors.) $\endgroup$ – gallmoth May 16 '14 at 3:00

I know of two tools that might work; they are both Finite Element Method based:

  1. COMSOL Multiphysics; your question reminds me of the Submarine example.
  2. ELMER FEM: Which has many of the features of Comsol, but is Open Source and has an electrostatics and magnetostatics solvers.
  • $\begingroup$ On that note, mooseframework.org is yet another similar multiphysics package (never used it, so not sure about its features and how it compares to the ones you mentioned). $\endgroup$ – alarge May 18 '14 at 3:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.