From c787155f78b4cc6d4e40f5a7a70877b74e85f40e Mon Sep 17 00:00:00 2001 From: Malcolm Ramsay Date: Fri, 28 Feb 2020 11:05:31 +1100 Subject: [PATCH] fix(final check): This fixes references and consistency Fixes #214 Fixes #213 Fixes #212 Fixes #194 Fixes #186 Fixes #168 Fixes #161 Fixes #112 Fixes #110 Fixes #109 Fixes #90 --- 00_Introduction/introduction.md | 19 +++++++------ 01_Methods/Computational_Methods.md | 6 ++--- 01_Methods/Dynamics.md | 2 +- 01_Methods/Machine_Learning.md | 2 +- 01_Methods/Molecular_Dynamics.md | 8 +++--- 01_Methods/Simulation_Conditions.md | 4 +-- 02_Dynamics/conclusion.md | 4 +-- 02_Dynamics/introduction.md | 23 +++++++--------- 02_Dynamics/standard_dynamics.md | 15 ++++++----- 03_Glassy_Dynamics/conclusion.md | 4 +-- 03_Glassy_Dynamics/introduction.md | 4 +-- 03_Glassy_Dynamics/stokes_einstein_debye.md | 9 ++++--- 04_Machine_Learning/conclusion.md | 2 +- 05_Crystal_Melting/conclusion.md | 2 +- 05_Crystal_Melting/introduction.md | 2 +- 05_Crystal_Melting/rates.md | 6 +++-- 05_Crystal_Melting/thermodynamics.md | 10 +++---- 06_Melting_Behaviour/conclusion.md | 6 ++--- 06_Melting_Behaviour/dynamic_analysis.md | 30 ++++++++++----------- 06_Melting_Behaviour/introduction.md | 2 +- 08_Appendix/code_snippets.md | 2 +- 08_Appendix/creating_hdf5_bomb.md | 4 +-- 08_Appendix/docker_on_fedora.md | 4 +-- 08_Appendix/perils_of_packaging.md | 2 +- 24 files changed, 86 insertions(+), 86 deletions(-) diff --git a/00_Introduction/introduction.md b/00_Introduction/introduction.md index 72a3450..ebb6958 100644 --- a/00_Introduction/introduction.md +++ b/00_Introduction/introduction.md @@ -64,7 +64,8 @@ Substances with Arrhenius-like temperature dependence, shown by the blue line from the bottom left to top right of the figure, are considered strong liquids. The visibly convex curves are describes as fragile liquids. \ -*Figure from @Lubchenko2007 used with permission © Annual Reviews*](../00_Introduction/figures/angell.png){#fig:angell} +*Figure from @Lubchenko2007 used with permission © Annual Reviews* +](../00_Introduction/figures/angell.png){#fig:angell width=80%} The crystal growth rates of molecular crystals are two orders of magnitude slower than those of alloys @@ -72,7 +73,7 @@ and six orders of magnitude slower than pure metals (@fig:growth_rates), yet there is no understanding of why this is the case. Understanding the crystal growth of these materials is inherently tied to understanding the lack of crystal growth, -also known as glass formation. [@cite] +also known as glass formation. [@Berthier2011;@Cavagna2009] Many materials including organic molecules,[@Alba-Simionesco1999] metals, [@Wang2004] and phase-change materials [@Wuttig2007] have applications in both the crystal and amorphous glassy state. @@ -84,12 +85,12 @@ the crystal growth rate is maximum, while the downward arrows indicate the glass transition temperature. The data for silver is from molecular dynamics calculations while all other results are from physical measurements. \ -*Figure from @Orava2014 used with permission AIP Publishing* -](../00_Introduction/figures/molecular_growth_rates.png){#fig:growth_rates} +*Figure from @Orava2014 used with permission © AIP Publishing* +](../00_Introduction/figures/molecular_growth_rates.png){#fig:growth_rates width=80%} The most notable and well studied molecular liquid is ortho-terphenyl, -chosen for having both an incredibly slow growth rate [@cite] -and being a highly fragile liquid. [@cite] +chosen for having both an incredibly slow growth rate [@Orava2014] +and being a highly fragile liquid. [@Angell2000;@Chong2004] There are many experiments on ortho-terphenyl, [@Cicerone1996;@Andreozzi1997;@Chang1994;@Fujara1992;@Mapes2006] using a range of techniques to better understand @@ -240,7 +241,7 @@ like fewer neighbour interactions to consider. Additionally fewer particles are needed to remove finite size effects since particles only extend in two dimensions. Finally, the analysis of data in 2D is much easier to visualise. -One of the reasons @fig:dynamic_heterogenaeties is used so widely +One of the reasons @fig:dynamic_heterogeneities is used so widely to describe dynamic heterogeneities is that it so succinctly captures the idea, something made possible by the 2D nature of the simulation. @@ -265,7 +266,9 @@ while the positions are defined by the distance $d$ from the center of the central particle, and the angle $\theta$ between the centers of the two radial particles. -![This shows the construction of the trimer molecule.](../01_Methods/figures/trimer.pdf) +![This shows the construction of the trimer molecule. +The variant used within this thesis has $d=1, r=0.637556,$ and $\theta=180^\circ$ +](../01_Methods/figures/trimer.pdf) # Project Outline diff --git a/01_Methods/Computational_Methods.md b/01_Methods/Computational_Methods.md index 9e04f88..264c7d2 100644 --- a/01_Methods/Computational_Methods.md +++ b/01_Methods/Computational_Methods.md @@ -69,7 +69,7 @@ should be treated with caution. [@Press1988] ![When RANDU generates 'pseudo-random' the coordinates of points in 3D, all the points lie on one of 15 planes shown. -](../Projects/random_number_generators/presentation/figures/randu.png){#fig:rand width=80%} +](../Projects/random_number_generators/presentation/figures/randu.png){#fig:randu width=80%} There are also classes of bugs which are more subtle, results which are different yet neither is definitively right. @@ -244,7 +244,7 @@ Importantly when using version control is to keep the size of each change fairly small as it makes this retrospective analysis much easier. Smaller changes are also a lot easier -for someone else to review. [@sec:peer-review] +for someone else to review. The minimum documentation for a project should be a README file, a first port of call for anyone coming across the project. @@ -376,7 +376,7 @@ All the figures within the thesis are drawn from the projects from which they were created, which contain the code to recreate them. These projects are [Dynamics](https://github.com/malramsay64/Dynamics), -used for the results in @sec:Dynamics and @sec:Dynamics_Analysis, +used for the results in @sec:Dynamics and @sec:Glassy_Dynamics, [Machine_Learning](https://github.com/malramsay64/Machine_Learning) used to generate the results in @sec:Machine_Learning, and [Crystal_Melting](https://github.com/malramsay64/Crystal_Melting) used for the results in @sec:Crystal_Melting and @sec:Melting_Behaviour. diff --git a/01_Methods/Dynamics.md b/01_Methods/Dynamics.md index c2c04b2..16832ba 100644 --- a/01_Methods/Dynamics.md +++ b/01_Methods/Dynamics.md @@ -60,7 +60,7 @@ I used the function `freud.density.RDF` from the freud python package [@Harper2016] for the analysis of the radial distribution function. The radial distribution is averaged over 1000 frames -at the melting point shown in @fig:radial_distribution_function. +at the melting point shown in @fig:radial_distribution. ![The radial distribution function of the Trimer liquid at a pressure $P=13.50$ and a temperature $T=1.50$. The radial distribution is taken as an average over 100 configurations of diff --git a/01_Methods/Machine_Learning.md b/01_Methods/Machine_Learning.md index 63892a0..4d0ab39 100644 --- a/01_Methods/Machine_Learning.md +++ b/01_Methods/Machine_Learning.md @@ -122,7 +122,7 @@ $$ BACC = \frac{1}{2} \left[ \frac{TP}{P} + \frac{TN}{N} \right] $$ and is a common metric when dealing with small imbalances in the size of the datasets. [@Brodersen2010;@Kelleher2015] -** | Positive | Negative | +| Positive | Negative | ------ |-- |-- | Predict Positive | TP | FP | Predict Negative | FN | TN | diff --git a/01_Methods/Molecular_Dynamics.md b/01_Methods/Molecular_Dynamics.md index 4cda242..d973bf3 100644 --- a/01_Methods/Molecular_Dynamics.md +++ b/01_Methods/Molecular_Dynamics.md @@ -13,7 +13,7 @@ used within this thesis. The investigation of liquids resistant to crystallisation necessitates simulations over long time scales to fully characterise this behaviour. -Additionally, as described in @sec:computational_tractibility +Additionally, as described in @sec:computational_tractability the size of the simulation needs to be large enough to avoid the impact of finite size effects, with 500 particles recommended as the lower limit. [@Kikugawa2015;@Moultos2016;@Maginn2018] @@ -145,7 +145,7 @@ HOOMD-blue [@Anderson2008;@Nguyen2011] is a more recent software package designed for GPU computation. It makes full use of the GPU by avoiding communication overheads and using data structures and algorithms designed for this hardware, -an example being the SARU pseudo-random number generator. [@sec:random-numbers-in-hoomd] +an example being the SARU pseudo-random number generator (@sec:random_hoomd). While HOOMD-blue is on the cutting edge of technology, there is not the same diversity of literature to draw upon that LAMMPS has. This also means that there are not the library of extensions, @@ -311,7 +311,7 @@ The periodic boundary conditions of molecular dynamics simulations make the calculation of distances somewhat more challenging. When given an initial position $\vect{r_0}$ and a final position $\vect{r_t}$ with the periodic boundary conditions there are two possible directions -the particle could have moved in each direction. [@fig:periodic_distance] +the particle could have moved in each direction. The same is also true for rotational motion. The standard method of handling this is the minimum image convention, where the distance is calculated for the shortest of the two paths. @@ -443,7 +443,7 @@ is an algorithm for generating statistically random values that is, their distribution matches that of true randomness, while being possible to exactly replicate a sequence. -### Random Numbers in HOOMD-blue +### Random Numbers in HOOMD-blue {#sec:random_hoomd} Random numbers are used in Hoomd for the initialisation of translational and rotational velocities. diff --git a/01_Methods/Simulation_Conditions.md b/01_Methods/Simulation_Conditions.md index ef91d66..109a02e 100644 --- a/01_Methods/Simulation_Conditions.md +++ b/01_Methods/Simulation_Conditions.md @@ -10,9 +10,9 @@ The simulations use the parameters $\tau = 1.0$ and $\tau_P = 1.0$ for the MTK thermostat and barostat respectively which correspond to the rate the temperature and pressure are restored to their desired values. -A step size of \si{0.005} is used for all simulations. +A step size of \num{0.005} is used for all simulations. In @sec:methods_dynamics we describe the simulations -used for the analysis of Dynamics in @sec:Dynamics and @sec:Glassy_dynamics, +used for the analysis of Dynamics in @sec:Dynamics and @sec:Melting_Behaviour, and in @sec:methods_melting we describe the simulations for machine learning in @sec:Machine_Learning diff --git a/02_Dynamics/conclusion.md b/02_Dynamics/conclusion.md index 037c2c5..97a6c7c 100644 --- a/02_Dynamics/conclusion.md +++ b/02_Dynamics/conclusion.md @@ -1,4 +1,4 @@ -# Conclusion +# Conclusion {#sec:dynamics_conclusion} In this chapter we have established that the Trimer model is an appropriate model for the dynamics of ortho-terphenyl. @@ -11,7 +11,7 @@ by the presence of dynamic heterogeneities which are spatially correlated, finding regions of fast and slow relaxations. These are both behaviours observed in ortho-terphenyl. -Finally in @sec:sed_breakdown we do not observe +Finally in @sec:trans_rot_decoupling we do not observe the same decoupling of translational and rotational motion observed by @Chang1994. However, there are simulation studies where the calculation diff --git a/02_Dynamics/introduction.md b/02_Dynamics/introduction.md index 0b70f44..52055ad 100644 --- a/02_Dynamics/introduction.md +++ b/02_Dynamics/introduction.md @@ -95,12 +95,9 @@ The expected shape of structural relaxation is an exponential decay, meaning the observed non-exponential shape needs to be explained. The non-exponential shape is the average over a range of particles which gives rise to two possible explanations for non-exponentially; [@Richert1994] - -1. each particle is undergoing the same non-exponential relaxation process, or -2. the relaxation of each particle remains exponential, -however non-exponential is a distribution of - relaxation timescales. - +each particle is undergoing the same non-exponential relaxation process, or +the relaxation of each particle remains exponential, +however non-exponential is a distribution of relaxation timescales. This was initially investigated by simulation studies, which found the presence of spatially heterogeneous dynamics within the liquid. [@Hurley1995] This idea is encapsulated in @fig:dynamic_heterogeneities @@ -169,7 +166,7 @@ Within experiments, the diffusion constant is often measured using \ce{1H}-NMR [@Chang1994;@Chang1994a;@Fujara1992;@Mapes2006;@Andreozzi1997] which allows for the comparison with simulations. -### Rotational Diffusion Constant +### Rotational Diffusion Constant {#sec:rotational_diffusion} While the values calculated for the translational diffusion constant in simulations and experiments are relatively comparable, @@ -209,7 +206,7 @@ the 2nd degree Legendre polynomial chosen for matching the spectroscopic rotation [@Brodka1992] with the form; -$$ R_2(t) = \frac{1}{2} \langle 3(\hat{\vect{n}}(t) \cdot \hat{\vect{n}}(0))^2 -1 \rangle. $$ {#eg:rot_relax} +$$ R_2(t) = \frac{1}{2} \langle 3(\hat{\vect{n}}(t) \cdot \hat{\vect{n}}(0))^2 -1 \rangle. $$ {#eq:rot_relax} ### Rotational Motion through Jump Dynamics {#sec:intro_jump_dynamics} @@ -286,8 +283,8 @@ This decoupling has been observed in further studies of supercooled liquids and remains an unexplained phenomenon. [@Debenedetti2001;@Fujara1992;@Cicerone1996;@Ediger2000] -![Translational (□, ●, △) -and Rotational (◇,◆) diffusion coefficients +![Translational ($\square$, $\CIRCLE$, $\vartriangle$) +and Rotational ($\lozenge$,$\blacklozenge$) diffusion coefficients of ortho-terphenyl. The coupling of these quantities breaks down below 290K, where translational diffusion is faster relative to the structural relaxation. \ @@ -304,12 +301,12 @@ we expect the Trimer model to display. These are; 1. the non-Arrhenius temperature dependence characteristic of a fragile liquid -2. the two-step structural relaxation described in @sec:structural_realaxation +2. the two-step structural relaxation described in @sec:structural_relaxation 3. The presence of dynamic heterogeneities 4. Jump dynamics in the rotational relaxation 5. Decoupling of translational and rotational motion The rest of this chapter is about characterising these dynamic quantities for the Trimer and comparing them to the expected results for ortho-terphenyl. -@Sec:structural_realaxation describes 1, and 2, @sec:dynamic_heterogeneities describes -3, while 4 and 5 are described in @sec:stokes_einstein_debye. +@Sec:structural_relaxation describes 1, and 2, @sec:dynamic_heterogeneities describes +3, while 4 and 5 are described in @sec:sed. diff --git a/02_Dynamics/standard_dynamics.md b/02_Dynamics/standard_dynamics.md index a6d4633..85ead0c 100644 --- a/02_Dynamics/standard_dynamics.md +++ b/02_Dynamics/standard_dynamics.md @@ -31,10 +31,10 @@ inline with expectations. ![The intermediate scattering function of the trimer molecule over a range of temperatures at a pressure $P=13.50$. Note the logarithmic scale on the time axis. -](../Projects/Dynamics/figures/scattering_function.svg){width=81% #fig:intermediate_scattering_function} +](../Projects/Dynamics/figures/scattering_function.svg){width=81% #fig:isf} The structural relaxation of the Trimer molecule -is shown in @fig:intermediate_scattering_function. +is shown in @fig:isf. At low temperatures ($T=1.25$ to $T=1.4$) the relaxation of the intermediate scattering function takes place through a two-step process, @@ -55,12 +55,12 @@ where the fragility $m$ has been found to be 220. ](../Projects/Dynamics/figures/scattering_function_summary.svg){width=80% #fig:isf_relaxation} The timescales of the structural relaxation $\tau_S$ -are shown in @fig:isf_relaxtion, +are shown in @fig:isf_relaxation, which include the relaxation from both high ($P=13.5$) and low ($P=1.0$) pressure simulations. These structural relaxation times are excellent examples of the non-Arrhenius -temperature dependence of the dynamics in ortho-terphenyl (@sec:vtf). +temperature dependence of the dynamics in ortho-terphenyl (@sec:intro_vtf). The fragility $m=220$ of the Trimer liquid is much higher than that of ortho-terphenyl, which makes it an even more interesting candidate. @@ -113,7 +113,7 @@ Vogel--Tammann--Fulcher relation. {#tbl:glass_transition_temp} ## Dynamic heterogeneities {#sec:dynamic_heterogeneities} -The non-exponential structural relaxation in @fig:intermediate_scattering_function +The non-exponential structural relaxation in @fig:isf also hints at the presence of dynamic heterogeneities. As the temperature decreases from 2.5 to 1.30, the maximum value of non-Gaussian parameter increases, @@ -191,7 +191,7 @@ while coloured areas have lots of motion. The translational diffusion is characterised by the Mean Squared Displacement (MSD) of particles shown in @fig:msd. -The two-step relaxation process seen in the structural relaxation (@fig:structural_relaxation) +The two-step relaxation process seen in the structural relaxation (@fig:isf_relaxation) is also seen in the MSD. At lower temperatures, the transition from the initial ballistic region @@ -241,7 +241,8 @@ and the diffusion constant are a component of confirming that the observed dynamical behaviour is as expected. The figures showing the rotational relaxation times -and the diffusion constant are shown in @sec:extra_dynamics. +and the diffusion constant are shown in @fig:rotational_relaxation and +@fig:diffusion_constant. While the ratios between the quantities are displayed in @fig:trans_rot_trimer. This is interesting diff --git a/03_Glassy_Dynamics/conclusion.md b/03_Glassy_Dynamics/conclusion.md index 49fdfde..feb88f6 100644 --- a/03_Glassy_Dynamics/conclusion.md +++ b/03_Glassy_Dynamics/conclusion.md @@ -1,4 +1,4 @@ -# Conclusion +# Conclusion {#sec:conclusion_dynamics_understanding} The introduction of new molecular relaxations in @sec:molecular_relaxation provides a method of describing the relaxation @@ -21,7 +21,7 @@ many of them need to be observed. The distribution of these jumps is much wider than for Brownian dynamics, with particle motion dominated by relaxations which have a long timescale but low probability. -When averaging over many relaxation times as in @fig:jump_heterogeneties, +When averaging over many relaxation times as in @fig:jump_heterogeneities, the distribution returns to a Gaussian. The increasing length scale of the jumps is likely related to the increasing length scale diff --git a/03_Glassy_Dynamics/introduction.md b/03_Glassy_Dynamics/introduction.md index 814b390..0b87475 100644 --- a/03_Glassy_Dynamics/introduction.md +++ b/03_Glassy_Dynamics/introduction.md @@ -3,7 +3,7 @@ ## Breakdown in Stokes--Einstein--Debye The Stokes--Einstein--Debye (SED) theory of dynamics -describes a series of relations (@eq:sed) between dynamics quantities. +describes a series of relations (@eq:sed_proportionality) between dynamics quantities. These relations describe the dynamics of a wide range of liquids, however, they start to break down in fragile liquids close to the glass transition temperature. @@ -55,7 +55,7 @@ and the average diffusion constant $$ \frac{D_\text{fast} + D_\text{slow}}{2} \approx \frac{D_\text{fast}}{2} $$ -we can how there are different relationships. [@cite] +we can see how these relaxations behave differently. Here the presence of dynamic heterogeneities results in a decoupling of translational and rotational motion by the choice of parameters. diff --git a/03_Glassy_Dynamics/stokes_einstein_debye.md b/03_Glassy_Dynamics/stokes_einstein_debye.md index 9332851..0c1a0eb 100644 --- a/03_Glassy_Dynamics/stokes_einstein_debye.md +++ b/03_Glassy_Dynamics/stokes_einstein_debye.md @@ -62,7 +62,7 @@ The progression of time is described by the colour of the point. The particle spends long periods of time in one configuration before quickly moving to the next, which typically requires both a translational and rotational motion. -](../Projects/Dynamics/figures/molecule_trajectory_fast.svg){width=48% #fig:molecule_trajectory_fast} +](../Projects/Dynamics/figures/molecule_trajectory_fast.svg){width=80% #fig:molecule_trajectory_fast} With the motion of particles so heavily influenced by Jump dynamics we can investigate the role they play in dynamic heterogeneities. @@ -137,7 +137,8 @@ play an important role in the breakdown of the SED dynamics. The presence of a length scale dependence of the rotational and translational motion would clear up some of the confusion in the literature -of the decoupling of rotations and translations. [@cite] +of the decoupling of rotations and translations. +[@Chong2009;@Tarjus1995;@Lombardo2006;@Sengupta2013;@Kawasaki2019;@Jose2006] When calculating the translational diffusion constant we describe the long timescale behaviour of the mean-squared-displacement @@ -184,7 +185,7 @@ there are two main assumptions made about the dynamics; 1. the motion is comprised of many small independent steps, and 2. translational and rotational motions are independent. -@Sec:jump-dynamics investigates the first of these assumptions, +@Sec:jump_dynamics investigates the first of these assumptions, finding it not to hold for fragile liquids, so here we look towards the second. The observations of decoupling of translational and rotational motion @@ -235,7 +236,7 @@ Large values of $\gamma$ required large values for both the translational component $\Delta r$ and the rotational component $\Delta \theta$. The coupling parameter of the Trimer molecule is shown in @fig:gamma, -having a very similar shape to that of the non-Gaussian parameter (@fig:non_gaussian). +having a very similar shape to that of the non-Gaussian parameter (@fig:non-gaussian). As the temperature drops, the coupling between the rotational and translational motions grow and the timescale of coupling increases. diff --git a/04_Machine_Learning/conclusion.md b/04_Machine_Learning/conclusion.md index eecfd31..3d9e540 100644 --- a/04_Machine_Learning/conclusion.md +++ b/04_Machine_Learning/conclusion.md @@ -1,4 +1,4 @@ -# Conclusion +# Conclusion {#sec:conclusion_ml} Machine learning is a valuable tool that can be used for the understanding of crystal structures in molecular dynamics simulations. diff --git a/05_Crystal_Melting/conclusion.md b/05_Crystal_Melting/conclusion.md index 9a76976..e454406 100644 --- a/05_Crystal_Melting/conclusion.md +++ b/05_Crystal_Melting/conclusion.md @@ -1,4 +1,4 @@ -# Conclusion +# Conclusion {#sec:conclusion_melting} In this chapter we have studied the crystal melting behaviour of the Trimer molecule. diff --git a/05_Crystal_Melting/introduction.md b/05_Crystal_Melting/introduction.md index 39e1455..6611864 100644 --- a/05_Crystal_Melting/introduction.md +++ b/05_Crystal_Melting/introduction.md @@ -103,7 +103,7 @@ their liquid position to their crystal position requires interacting with other particles in the liquid, which gives the diffusional timescale to motion. With the diffusion constant of the trimer molecule -begin described by the Vogel--Tammann--Fulcher relation, (@eq:vtf) +begin described by the Vogel--Tammann--Fulcher relation, (@eq:VTF) the exponential dependence on temperature drastically reduces the possible rate of crystal growth as the temperature drops. The Wilson--Frenkel theory describes growth diff --git a/05_Crystal_Melting/rates.md b/05_Crystal_Melting/rates.md index 05a50ce..e31de4d 100644 --- a/05_Crystal_Melting/rates.md +++ b/05_Crystal_Melting/rates.md @@ -78,7 +78,8 @@ The Wilson--Frenkel model is the classical model which would be expected to model the growth of the trimer, being a fragile liquid. The Wilson--Frenkel model defines the temperature dependent function $p(T) = D(T)$, -where we have chosen $1/\tau_r$ for the transport coefficient $D(T)$. [@sec:transport_coefficient] +where we have chosen $1/\tau_r$ for the transport coefficient $D(T)$ +(@sec:crystal_transport). The ratio (@eq:classical_growth_refactor) for the Wilson--Frenkel model is shown in @fig:melting_wilson, which describes an improved relationship over the Turnbull mode. Close to the melting point, @@ -200,7 +201,8 @@ in the same way we have for the classical models. @Fig:melting_dft shows the proportionality of @eq:proportionality_dft, with a straight line indicating perfect proportionality. Using the fluctuations shows a much improved -fit to the model than either of the classical models. [@fig:melting_turnbull;@fig:melting_wilson] +fit to the model than either of the classical models (@fig:melting_turnbull and +@fig:melting_wilson). There is a change in the melting behaviour near the middle of the temperature range so this is not a perfect model, diff --git a/05_Crystal_Melting/thermodynamics.md b/05_Crystal_Melting/thermodynamics.md index a5650b1..52ce0a1 100644 --- a/05_Crystal_Melting/thermodynamics.md +++ b/05_Crystal_Melting/thermodynamics.md @@ -1,4 +1,4 @@ -# Thermodynamic quantities for Melting and Growth +# Thermodynamic quantities for Melting and Growth {#sec:melting_thermodynamics} In this section we find the quantities needed to model crystal growth @@ -75,10 +75,6 @@ over the course of the simulation. ## Spinodal temperature {#sec:spinodal} -In @sec:supercooled_liquids it was discussed that -a liquid can exist as a metastable state below the melting point -giving a supercooled liquid. -The same phenomenon is also true of the crystal above the melting point. At some temperature above the melting point, the crystal is no longer metastable, spontaneously melting to form the liquid. @@ -171,10 +167,10 @@ where @Tang2013 use the slowest diffusion rate to model with Wilson--Frenkel growth, noting that the choice of transport coefficient didn't make much difference to the fit. -Because of the breakdown in the Stokes--Einstein--Debye relations [@sec:trans_rot_coupling] +Because of the breakdown in the Stokes--Einstein--Debye relations (@sec:trans_rot_coupling) and noting that the transition between the liquid and crystal mostly takes place through orientational motions, -the inverse rotational relaxation time $1/\tau_r$ [@sec:rotational_diffusion] +the inverse rotational relaxation time $1/\tau_r$ (@sec:rotational_diffusion) has been chosen as the transport coefficient. The rotational relaxation time $\tau_r$ is the time for half of the molecules to have reoriented by \SI{90}{\degree} diff --git a/06_Melting_Behaviour/conclusion.md b/06_Melting_Behaviour/conclusion.md index 0438e59..7256700 100644 --- a/06_Melting_Behaviour/conclusion.md +++ b/06_Melting_Behaviour/conclusion.md @@ -1,4 +1,4 @@ -# Conclusion +# Conclusion {#sec:conclusion_melting_behaviour} In @sec:static_analysis, we reinforced our assumption that the structures from @@ -9,7 +9,7 @@ within the configurations. This gives support to our crystal structures being the lowest energy structures available to the Trimer despite not observing crystallisation. -This result is supported in @sec:dynamic_analysis +This result is supported in @sec:polymorphic_stability by the presence of the solid state phase transition from the p2gg structure to the p2. Additionally with the pg structure melting significantly faster @@ -19,7 +19,7 @@ to be a clear favourite. With no unknown structures, and there being no competition form the pg and p2gg structures, the p2 structure is the best candidate for studying the melting in @sec:Crystal_Melting. -Additionally @sec:dynamic_analysis found +Additionally @sec:polymorphic_stability found that while the dynamics overall are incredibly slow, there are fast pathways of motion in the propagation of defects. diff --git a/06_Melting_Behaviour/dynamic_analysis.md b/06_Melting_Behaviour/dynamic_analysis.md index c6081d8..02a4e52 100644 --- a/06_Melting_Behaviour/dynamic_analysis.md +++ b/06_Melting_Behaviour/dynamic_analysis.md @@ -200,7 +200,7 @@ are grain boundaries between the layers of p2 crystals. ::: Overall the dynamics of the Trimer molecule -are phenomenally slow @sec:Dyanmics, +are phenomenally slow (@sec:Dynamics), however the speed of the solid state transition is fast, indicating a low energy pathway between different configurations. The flipping of a dimer doesn't @@ -217,9 +217,9 @@ In this section we investigate the melting of this polymorph to understand why is is so much faster. Configurations from the melting of the pg polymorph (@fig:pg_melting) show an asymmetric melting of the crystal structure. -In the same time 30 layers of crystal from the ${0 \bar{1}}$ face have +In the same time 30 layers of crystal from the $\{0 \bar{1}\}$ face have melted (from @fig:pg_melting_0 to @fig:pg_melting_2), -the surface layer of the crystal in the ${0 1}$ face remains completely intact, +the surface layer of the crystal in the $\{0 1\}$ face remains completely intact, containing the same molecules as the initial configuration. While there are many instances of crystals having a melting or growth rate dependent on the face of the crystal used for the measurement, [@Burke1988;@Tymczak1990;@Reinhart2017] @@ -247,21 +247,21 @@ This shows (a) the melting from the initial crystal, ::: The primary difference between -the ${0 1}$ and the ${0 \bar{1}}$ faces of the pg crystal +the $\{0 1\}$ and the $\{0 \bar{1}\}$ faces of the pg crystal is the part of the molecule exposed to the liquid. -The ${0 1}$ face of the crystal exposes the larger particle, -while the ${0\bar{1}}$ face exposes all three component particles. -Interactions at the ${0\bar{1}}$ face of the crystal +The $\{0 1\}$ face of the crystal exposes the larger particle, +while the $\{0\bar{1}\}$ face exposes all three component particles. +Interactions at the $\{0\bar{1}\}$ face of the crystal can have much stronger interactions with the liquid -than at the ${0 1}$ face of the crystal, +than at the $\{0 1\}$ face of the crystal, interactions which can help remove particles from the crystal. This isn't the entire story, since molecules at both faces of the crystal have the same interactions within the crystal with each molecule locked into the concavities of the neighbouring molecules. -The melting of the crystal [@fig:pg_melting_1] -takes place along the ${1 \bar{1}}$ and ${\bar{1} \bar{1}}$ planes +The melting of the crystal (@fig:pg_melting_1) +takes place along the $\{1 \bar{1}\}$ and $\{\bar{1} \bar{1}\}$ planes giving the triangular shape. Along these two faces there isn't the same locking of molecules into the crystal structure. @@ -280,11 +280,11 @@ showing the configurations of the particles. ::: -Examining the dynamics at the interface ([@fig:spatial_relaxation_pg]), +Examining the dynamics at the interface (@fig:spatial_relaxation_pg), there appears to be a large region extending from -the ${0 1}$ face of the crystal +the $\{0 1\}$ face of the crystal where the rotational relaxations are significantly longer than the mean. -This indicates that the ${0 1}$ face suppresses the dynamics of the liquid +This indicates that the $\{0 1\}$ face suppresses the dynamics of the liquid resulting in an asymmetric melting rate. The mechanism for this suppression could be explained by considering the molecular system as a network of gears, [@Zwanzig1987] @@ -298,8 +298,8 @@ with the neighbourhood of the liquid changing regularly, however, it describes a mechanism by which the crystal can inhibit the rotational dynamics. The same suppression of rotational motion at the interface -can be considered for the p2 polymorph. [@fig:spatial_relaxation_p2] -The p2 polymorph displays a similar suppression along the ${1 0}$ and ${\bar{1} 0}$ faces, +can be considered for the p2 polymorph (@fig:spatial_relaxation_p2). +The p2 polymorph displays a similar suppression along the $\{1 0\}$ and $\{\bar{1} 0\}$ faces, although it is less pronounced. This is possibly a result of the crystal faces not aligning with the edges of the crystal, diff --git a/06_Melting_Behaviour/introduction.md b/06_Melting_Behaviour/introduction.md index c719328..789122e 100644 --- a/06_Melting_Behaviour/introduction.md +++ b/06_Melting_Behaviour/introduction.md @@ -97,6 +97,6 @@ In @sec:static_analysis, we start with a revisit of some of our assumptions about our crystal structures, followed by an analysis of the configurations, looking for additional structures we haven't considered. -This is followed in @sec:dynamic_analysis by +This is followed in @sec:polymorphic_stability by an analysis of the melting dynamics of each crystal structure, looking at their stability and identifying competition between structures. diff --git a/08_Appendix/code_snippets.md b/08_Appendix/code_snippets.md index d0b33b0..d7c04b6 100644 --- a/08_Appendix/code_snippets.md +++ b/08_Appendix/code_snippets.md @@ -78,7 +78,7 @@ for state, dist, status in zip(self._state, distance, self._status): RuntimeError("Invalid State") ``` -```{.c++ #lst:gaussian_rng caption="Converting uniformly distributed random numbers on a gaussian distribution using a Box-Muller transformation."} +```{.cpp #lst:gaussian_rng caption="Converting uniformly distributed random numbers on a gaussian distribution using a Box-Muller transformation."} inline float gaussian_rng(RNG &rng, const float sigma) { // use Box-Muller transformation to get a gaussian random number float u, v, s, z0; diff --git a/08_Appendix/creating_hdf5_bomb.md b/08_Appendix/creating_hdf5_bomb.md index 208f28a..a69bde1 100644 --- a/08_Appendix/creating_hdf5_bomb.md +++ b/08_Appendix/creating_hdf5_bomb.md @@ -15,7 +15,7 @@ comprising lots of strings which are all the same. ```python import pandas as pd large_number = 1_000_000 -df = pd.DataFrame({'evil': ['😈']*large_number}) +df = pd.DataFrame({'evil': ['x']*large_number}) ``` Using the `sys.getsizeof` function we can find the size in memory of this DataFrame @@ -77,7 +77,7 @@ sometimes the simplest approach is to make the big data small. [^1]: The compression is working exactly as intended, it just hides the true size of the underlying data. -[^2]: From interrogating the size of the DataFrame using either `sys.getsizeof(df)` or `df.memeory_useage(deep=True)` it appears that the memory is allocated for each object. When querying the individual objects using `id`, they all return the same value, which is the same as just the string. I don't know what is going on and would be happy for someone to point me to a good resource. +[^2]: From interrogating the size of the DataFrame using either `sys.getsizeof(df)` or `df.memory_useage(deep=True)` it appears that the memory is allocated for each object. When querying the individual objects using `id`, they all return the same value, which is the same as just the string. I don't know what is going on and would be happy for someone to point me to a good resource. [^3]: Of course you are going to download a file some random stranger on the internet tells you is going to crash your python interpreter. diff --git a/08_Appendix/docker_on_fedora.md b/08_Appendix/docker_on_fedora.md index f933af4..ce16a58 100644 --- a/08_Appendix/docker_on_fedora.md +++ b/08_Appendix/docker_on_fedora.md @@ -68,10 +68,10 @@ sudo systemctl start docker ## Setting Permissions -{{% alert note %}} +::: Warning This section has the potential to break things which are difficult to fix. Please be really careful, unlike me. -{{% /alert %}} +::: This follows the optional [post installation][docker post-install] steps in the Docker documentation. diff --git a/08_Appendix/perils_of_packaging.md b/08_Appendix/perils_of_packaging.md index 42647c1..4d00501 100644 --- a/08_Appendix/perils_of_packaging.md +++ b/08_Appendix/perils_of_packaging.md @@ -445,6 +445,6 @@ rather than any changes to the code that I made. [PEP 513]: https://www.python.org/dev/peps/pep-0513/#the-manylinux1-policy [manylinux demo]: https://github.com/pypa/python-manylinux-demo [PEP 518]: https://www.python.org/dev/peps/pep-0518/ -[ptp 518 progress]: https://github.com/pypa/pip/issues/4802 +[pep 518 progress]: https://github.com/pypa/pip/issues/4802