-
Notifications
You must be signed in to change notification settings - Fork 3
Home
Computational physics in APL
This project is a preliminary investigation into physics simulations in APL. It is intended to demonstrate APL as a tool for translating algorithms and mathematical formulae into executable code.
The code is available as Dyalog ]Link-able .apl* files.
In a CLEAR WS, ]Link.Create APLPhys "path/to/APLPhys/folder/containing/.apl*_files"
Use the Run
function to run the LJmelt sample
⍝ The full file path is required if you haven't changed directory (]CD) to the APLPhys folder
Run 'Examples/LJmelt.aplphys'
The overall project will be documented on the wiki
Individual code examples will be explained in a series of Jupyter notebooks which can be read here on GitHub, using nbviewer or with a Jupyter installation with the Dyalog Jupyter kernel. These will reside in the Jupyter folder.
We hope that this project will appeal to physical science, computing and mathematics students and teachers; researchers in physics and materials science, and those using molecular dynamics in particular; and of course the APL and array programming communities.
As it stands, this project only contains a proof-of-concept for a simple Lennard-Jones melt velocity Verlet simulation. We hope the accompanying code explanations and comparative speed tests will show that APL is suitable as a rapid-development tool with the added benefit of tolerable computation speed.
We hope to expand this project to include other computational simulation models, initially inspired by the LAMMPS gamut. There is also the potential to use APL for processing experimental data, perhaps in combination with Microsoft Office Excel (and perhaps libre office?).