Skip to content
MaxCan-Code edited this page Mar 2, 2021 · 2 revisions

Electrolocation with Active Electric Field

Intro

Electrolocation

@@latex:\subsecname@@

  • Some fish can detect object in murky water
  • How do they do it? ‘see’ change in electric field
  • Pick up perturbation on their skin (receptor plane)
  • Same ability, different methods

Weakly electric fish are able to detect and localize prey based on microvolt-level perturbations in the fish’s self-generated electric field [fn:1]

  • We can simulate that
  • with finite elements method (FEM) and FEniCS

Why do it?

  • Electrosensory robots [fn:2]
  • understand & test tech
  • understand fish behaviour
  • Test analytical approx for sphere

[fn:1] Chen 2005

[fn:2] Lebastard et al., 2016; Solberg et al., 2008

How it works

  • Conductors/dielectrics perturbs its generated field
  • Electrical properties of different objects: diff perturbations

Model

Idea

@@latex:\subsecname@@

  • Compute perturbation in field (diff in electrostatic potential)
  • Variable coefficient Poisson equation

in 3D

  • Infinite domain, approximate on finite mesh
  • Natural (Neumann) BC: ($∇ ψ \cdotp \vec n = 0$) on boundary

Model field as

  • Self-generated field: plane of point charges
  • flat fish in 3D

Assumptions

@@latex:\subsecname@@

  • Linear, homogeneous, isotropic sphere and cube
  • No fish body, just receptor and charge plane
    • If uniform body, change magnitude only not shape

Formulation

Formulation

\begin{equation*} ε e2\underbrace{ψ e}\text{Empty field} =\underbrace{∑ qi δ (xi )}\text{point sources} \end{equation*}

  • sum of \(δ(xi)\)s approximates generated field [fn:chens]
  • Field perturbed by dielectric object $S$ ($ψ o$): $$∇ \cdotp (ε ∇ ψ o )=∑ qi δ (xi ), \qquad ε =\begin{cases} ε i & \text{internal to } S
    ε e & \text{external to } S \end{cases}$$

$$\underbrace{δ ψ }\text{Perturbation} =ψ oe$$ [fn:chens] Chen 2005

Methods

FEniCS

FEniCS

  • open-source FEM solver for PDEs
  • components for:
    • C++ backend, Python interface (DOLFIN)
    • Compiler for math expressions (FFC)
    • Generating FE basis functions (FIAT)
    • Language for variational problems (UFL)
    • Mesh generation (mshr)

FEM

Variational Formulation [fn:fen]

  • Multiply the PDE by a function $v$
  • Integrate the resulting equation over the domain $Ω$

\begin{equation*} ∫ Ω [ ∇ \cdotp (ε ∇ ψ o )] v\ \mathrm{d} x=∫ Ω fv\ \mathrm{d} x=∑ qiΩ δ (xi )v\ \mathrm{d} x \end{equation*}

  • Integrate by parts

\begin{equation*} ∫ Ω ε ∇ ψ o \cdotp ∇ v\ \mathrm{d} x=∑ qi v(xi ) \end{equation*}

  • Weaker continuity requirement on $ε\psi o$

[fn:fen] The FEniCS Tutorial

FE Basis

  • finite element function $u$ is expressed as a linear combination of basis functions $φ j$

\begin{equation*} u≈ ∑ Uj φ j \end{equation*}

  • sub $u$ into variational problem and solve for $Uj$

example basis $φ j$

example basis $φ j$ approximates discrete delta: exact accuracy on grid functions

Verification

refinement

  • error near singularity and object
  • mark then refine

Convergence

  • No analytical solution on finite domain
  • Test problem: single point charge

\begin{equation*} ∇ 2 ψ =qδ ( 0) \end{equation*}

  • Analytical solution on infinite domain:

\begin{equation*} ψ =\frac{q}{ε | \mathbf{r}| } \end{equation*}

  • Choose R to approximate infinite domain
  • Point-wise error where perturbation occurs
  • 3 parameters: R, initial cells, refinements

  • Dir BC: 2 refinements
  • 64: more points on boundary
  • interpolation error
initial cells
16 32 64
50 | 3.141E-02 -1.336E-04 -8.438E-04
R 75 | 3.371E-02 -8.959E-04 -2.021E-03
100 | 1.043E-02 -9.038E-03 -2.091E-03

conclusion

@@latex:\subsecname@@

Works on test problems Perturbations happen

Future Work

  • Viable for test sensitivity to geometry
  • Use HPC
  • Modelling package
  • Time dependent simulations
  • Size & geometry of object in non uniform field?
Clone this wiki locally