Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: arxiv.org, pubmed.ncbi, ncbi.nlm.nih.gov -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (13.0%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: IvanSpirandelli
- License: mit
- Language: Julia
- Default Branch: master
- Size: 983 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
SolSim.jl
SolSim.jl simulates solute molecules, modeled as a union of hard spheres, in an implicitly modeled hard sphere solvent. The solvation free energy of the system is calculated by the so called morphometric approach.
The computationally difficult part of this approach is to calculate geometric measures of a union of 3d balls. We utilize a wrapped version of the AlphaMol program written by Patrice Koehl.
SolSim.jl is written in Julia.
To run SolSim.jl you will need to:
Install and run Julia 1.7.3 or later
Build the SolSim.jl package
Running the First Simulation
In the scripts folder you can find some useful helper functions to run simulations. To run a simulation for eight balls that has a helical configuration as the putative minimiser do:
julia> include("scripts/hard_sphere_simulated_annealing_calls.jl")
julia> single()
Outputs are saved to "io/output/singles". See the function declaration for parameters you can adjust.
The file "scripts/reproduction_calls.jl" contains several functions that scan the parameter space given by solvent radius, packing fraction and number of dissolved particles. The data generated by these functions is discussed in this paper.
# Viusalization in Houdini
Look at generated output files in Houdini. A Houdini project for this is included in the repository under "externaltools/solsim_visualizer.hipnc". The following two renders give an example:
| Hard Spheres Assembled into Helix | Corresponding Contact Graph |
![]() |
![]() |
A bug and its implications
When generating the data presented in the publication: Exotic self-assembly of hard spheres in a morphometric solvent there was bug in the calculation of the geometric measures. The mean curvature can be decomposed into positive and negative parts, i.e. $C = C^+ + C^-$. The bug was that $C^-$ was counted twice. This led to the simulations being driven by the following energy:
$E = p{wb} V + \sigma{wb} A+ \kappa{wb} (C + C^-) + \overline{\kappa}{wb} X$,
where $p{wb}, \sigma{wb}, \kappa{wb}$ and $\overline{\kappa}{wb}$ are the white bear prefactors.
For a union of balls $\bigcup{i} Bi$ with radii $r_i > 0$, the mean curvature $C$ can be written as
$C = C^+ + C^- = \sum{i} \frac{Ai}{ri+rs} + C^- = \frac{1}{R+rs}\sum{i} Ai + C^- = \frac{A}{R+rs} + C^-$,
Therefor we can write $E$ as follows
$E = p{wb} V + (\sigma{wb} - \frac{\kappa{wb}}{R+rs}) A+ 2\kappa{wb} C + \overline{\kappa}{wb} X$,
which is the classic morphometric approach with a different set of prefactors.
The white bear prefactors are give by:
$\beta p{wb} = \frac{\eta}{rs^3} \frac{3}{4\pi}\left(\frac{1+\eta+\eta^2-\eta^3}{(1-\eta)^3}\right)$,
$\beta \sigma{wb} = \frac{\eta}{rs^2} \frac{3}{4\pi} \left( - \frac{1+2\eta+8\eta^2-5\eta^3}{3(1-\eta)^3} - \frac{\text{ln}(1-\eta)}{3\eta}\right)$,
$\beta \kappa{wb} = \frac{\eta}{rs} \frac{3}{4\pi} \left(\frac{4 -10\eta+20\eta^2-8\eta^3}{3(1-\eta)^3} + \frac{4\text{ln}(1-\eta)}{3\eta}\right)$,
$\beta \overline{\kappa}_{wb} = \eta \frac{3}{4\pi} \left(\frac{-4 + 11\eta -13 \eta^2+4\eta^3}{3(1-\eta)^3} - \frac{4\text{ln}(1-\eta)}{3\eta}\right)$.
Owner
- Login: IvanSpirandelli
- Kind: user
- Repositories: 1
- Profile: https://github.com/IvanSpirandelli
Citation (CITATION.cff)
cff-version: 1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Spirandelli
given-names: Ivan
orcid: https://orcid.org/0009-0007-0417-4058
title: "SolSim.jl"
version: 1.0
doi: 10.5281/zenodo.1234
date-released: 10-04-2023
GitHub Events
Total
- Push event: 11
Last Year
- Push event: 11

