LANIMFE / LiquidsStructure.jl

Julia library that provides routines to calculate the structure factor of liquids

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LiquidsStructure.jl

GitHub Actions

This library intended to provide a mean to compute the structure factor of a variety of model liquids with different interaction potentials and under different approximation schemes (e.g. Percus–Yevick closure for the Ornstein–Zernike relation for a hard-sphere liquid) in the Julia programming language.

Status

For the time being this library provides routines to calculate the structure factor of:

TODO

  • Documentation
  • Add more interaction potentials and approximation schemes

Installation

LiquidsStructure.jl is compatible with Julia 1.0 and later versions. It requires first adding the LANIMFE-Registy to your Julia installation. Then it can simply be installed by running

julia> ]
pkg> add LiquidsStructure

Usage

Once installed, run

using LiquidsStructure

The structure factor can be calculated by constructing a StructureFactor(::Liquid, ::ApproximationScheme) object S, and then using S as a function over the wavevector k (S(k)).

As an example, let us plot the structure factor for a hard spheres liquid with a volume fraction η = 0.4, under the Verlet–Weis approximation scheme

julia> using LiquidsStructure
julia> using Plots
julia> η = 0.4;
julia> S = StructureFactor(HardSpheres(η), VerletWeis);
julia> plot(k -> S(k), 0, 10π, label = "S(k)")

Example image

Acknowledgements

This project was developed with support from CONACYT through the Laboratorio Nacional de Ingeniería de la Materia Fuera de Equilibrio (LANIMFE).

About

Julia library that provides routines to calculate the structure factor of liquids

License:MIT License


Languages

Language:Julia 100.0%