Properties

A skyrmion has many properties. In general, Skyrmions3D allows you to compute the integrand or integral of the property in question. For all the following examples, if you pass density=true you'll get the integrand. You can also get the moment by passing moment=2.

Suppose you have a $B=4$ cubic skyrmion

using Skyrmions3D
skyrmion = Skyrmion(40,0.2)
p4(z) = z^4 + 2*sqrt(3)*im*z^2 + 1
q4(z) = z^4 - 2*sqrt(3)*im*z^2 + 0
make_rational_map!(skyrmion, p4, q4)

Baryon number

Basic use:

Baryon(skyrmion)
>>> 3.968749058206481

Other examples:

baryon_density = Baryon(skyrmion, density=true)
rms_baryon = sqrt(Baryon(skyrmion, moment=2))
>>> 3.882435997469747

Energy

Basic use:

Energy(skyrmion)
>>> 5.371145445834469

Note: you can turn on physical units to get the energy in those units:

skyrmion.Fpi = 174
skyrmion.ee = 3
skyrmion.physical = true
Energy(skyrmion)
>>> (6149.285364807477, "MeV")

Currents

For currents, we use the function compute_current and pass a label. We list the currents and labels now:

  • Rotational moment of intertia, vMOI
  • Isorotational moment of intertia, uMOI
  • Mixed moment of intertia, wMOI
  • Iso-Axial, uAxial
  • Rotational-Axial, vAxial
  • Stress-tensor, stress
  • Noether-iso, NoetherIso
  • Noether-axial, NoetherAxial

Like the Energy and Baryon we can get the densities by passing density=true and the nth moment by passing moment=n. For instance, the Isorotational moment of inertia of the cubic rational map skyrmion is

U = compute_current(skyrmion, label="uMOI")

The density of the stress-tensor is given by

stress_density = compute_current(skyrmion, label="stress", density=true)

The second moment of the Noether-iso current is

why_am_i_computing_this = compute_current(skyrmion, label="NoetherIso", density=false, moment=2)