Unable to match OML charging conditions


I am working on recreating some OML (orbital-motion limited) charging results for small spherical objects (debye/radius ratio >> 1) but have an unknown issue with my simulation.

No results are being reported over its runtime. The timesteps and timestep size are displayed but nothing else (macroparticle number/ spacecraft potential/ current on spacecraft). I only occasionally receive the error “ReciprocalFunction warning: y out of range”, but this warning has not prevented me from getting results in the past.

I am running with PIC Vol Distrib electrons and ions (two populations of each), the timesteps for the plasma and circuit solver are equal to the plasma frequency. I have increased tolerances on the Poisson solver also. Mesh quality is AWFULL (I have only gotten BAD quality at best, but the average cell quality is >0.6, which is OK according to the manual). It is also worth noting that the spherical spacecraft is 3 orders of magnitude less than the Debye length for this plasma (2e-6 m with Debye of 3e-3 m), and I have employed subdomains to bring the mesh resolution close to this scale.

No SEE, Photoemission, etc. Only charging by the PIC plasma. Conductive material is being used and there is only one node in the circuit (S/C ground).

I am wondering what could be causing this issue? Is the spacecraft simply too small? Or is the environment type not correct for a simulation of this scale (using default BiMaxwellian)? Any help would be appreciated, thank you!


Hi Tyler

For the mesh quality, don’t let the native gmsh in spis mesh your volume. Instead 3d mesh it in gmsh (>v4), optimise it such that no low-quality tetras exist and save the mesh as version 2.

Then you can skip the geometry editor section when defining a new project (check the relevant checkbox) and just import your new non-awful mesh.

Your usage case sounds interesting. I do not believe the spacecraft is too small, and the environment seems fine.

Hi Fredrik,

Thank you, this seems to have worked! The mesh quality is now excellent. Still getting some “ReciprocalFunction warning: y out of range” messages but the mesh shouldn’t be the problem anymore.

Thanks again,