Recent Releases of ComFiT

ComFiT - ComFiT v1.5.0

ComFiT v1.5.0

Release Date: 30 May 2024

Summary

ComFiT (Computational Field Theory) is a Python library designed for solving partial differential equations with a focus on topological defects. The package includes the following features:

  • Spectral Methods: Employs spectral methods for differentiation and integration, which is user-friendly for those familiar with Fourier analysis.
  • Built-in Visualization: Includes tailored plotting tools for physical systems, allowing for seamless integration and visualization of results.
  • Topological Defect Analysis: Provides unique algorithms for identifying and tracking topological defects, crucial for studying various physical phenomena.

For more information, see the documentation.

Installation

bash pip install comfit==1.5.0

Usage example

```python import comfit as cf import matplotlib.pyplot as plt

fig = plt.figure(figsize=(10, 10))

Base System class instance

bs = cf.BaseSystem(2, xlim=[-3,3], ylim=[-3,3]) field = bs.x - bs.y ax1 = fig.addsubplot(2, 2, 1) bs.plotfield(field, ax=ax1)

# Quantum Mechanical System

qm = cf.QuantumMechanics(3, xRes=41, yRes=41, zRes=41) qm.confinitialconditionGaussian(initialvelocity=[0,0.1,0.3]) qm.evolveschrodinger(200) ax2 = fig.addsubplot(2, 2, 2, projection='3d') qm.plotcomplexfield(qm.psi, ax=ax2)

Bose Einstein Condensate System

bec = cf.BoseEinsteinCondensate(3, xRes=41, yRes=41, zRes=41) bec.confinitialconditionThomasFermi() bec.confinsertvortexring() bec.evolverelax(100) vortexnodes = bec.calcvortexnodes() ax3 = fig.addsubplot(2, 2, 3, projection='3d') bec.plotfield(abs(bec.psi), alpha = 0.2, ax=ax3, colorbar=False) bec.plotvortexnodes(vortexnodes,ax=ax3)

Phase-field crystal system

pfc = cf.PhaseFieldCrystal2DSquare(15,15) eta = pfc.calcamplitudeswithdislocationdipole() pfc.confPFCfromamplitudes(eta) pfc.evolvePFC(100) dislocationnodes = pfc.calcdislocationnodes() ax4 = fig.addsubplot(2, 2, 4) pfc.plotfield(pfc.psi,ax=ax4) pfc.plotdislocationnodes(dislocationnodes,ax=ax4,grid=False) ```

Scientific Software - Peer-reviewed - Jupyter Notebook
Published by vidarsko over 1 year ago