CASMcode icon indicating copy to clipboard operation
CASMcode copied to clipboard

MC output explainations

Open sjtuzhanglei opened this issue 1 year ago • 1 comments

Can you explain the meaning of the MC output in debug mode?

linear index: the i-th atom in the supercell written in the element order of the prim.json ? b, i, j, k: lattice site 2 (starting at 0?) in the suprecell written in the element order of the prim.json ? What does 1 and 14 mean? dCorr: change of correlations (aka, occupations) due to the proposed swap

What is M? d(N)? dx_dn? Why we need to define a so-called param_chem_pot, and how it is defined? d(Nunit * param_chem_pot * x)? comp_x?

`-- Calculate properties -- Semi-grand canonical ensemble: Thermodynamic potential (per unitcell), phi = -kTln(Z)/N Partition function, Z = sum_i exp(-Npotential_energy_i/kT) composition, comp_n = origin + M * comp_x parametric chemical potential, param_chem_pot = M.transpose() * chem_pot potential_energy (per unitcell) = formation_energy - param_chem_pot*comp_x

components: [ "H", "Va", "O", "Ru" ] M: -3 3 0 0 origin: 3 0 16 8 comp_n: 3 0 16 8 comp_x: 0 param_chem_pot: -4 param_chem_potcomp_x: -0 formation_energy: -0.068239416 formation_energy - param_chem_potcomp_x: -0.068239416 potential_energy: -0.068239416

-- Set: Conditions -- T: 300 param_chem_pot: [ -4.000000000000 ]

-- Calculate: correlations -- i ECI corr 0 -0.068239416 1 1 -0.4921608 0 2 -0.57513597 0 3 -0.32782943 0 4 0.76020089 0 5 0 unknown 6 0.40752985 0 7 0.078196956 0 8 0.48753443 0 9 0.34770401 0 10 0 unknown 11 0 unknown 12 0 unknown 13 0 unknown 14 0.090237286 0 15 0.17759015 0 16 0.053180584 0 17 0.35700289 0 18 0 unknown 19 0 unknown 20 0 unknown 21 0 unknown 22 0 unknown 23 0 unknown 24 0 unknown 25 0.040641532 0 26 -0.026265846 0 27 -0.054149559 0 28 -0.065024059 0 29 0 unknown 30 0 unknown 31 0.080827808 0 32 0.056867848 0 33 0 unknown 34 0 unknown 35 0 unknown 36 0.024185671 0 37 0 unknown 38 0 unknown 39 0.021329173 0 40 0 unknown 41 0.026053415 0 42 0 unknown 43 0 unknown 44 0 unknown 45 0 unknown 46 0 unknown 47 0.023257662 0 48 -0.034457234 0 49 0 unknown 50 0 unknown 51 0 unknown 52 0 unknown 53 0 unknown 54 0 unknown 55 0 unknown 56 0 unknown 57 0 unknown 58 -0.034730982 0 59 0 unknown 60 0 unknown 61 -0.25941284 0 62 -0.63137492 0 63 0 unknown 64 0.057646228 0 65 0 unknown 66 -0.07092499 0 67 0.10580814 0 68 -0.057282828 0 69 0 unknown 70 0 unknown 71 -0.180348 0 72 0 unknown 73 0 unknown 74 0 unknown 75 0 unknown 76 0 unknown 77 -0.41974011 0 78 -0.48033532 0 79 0.038775982 0 80 0 unknown 81 0 unknown 82 0 unknown 83 0 unknown 84 0 unknown 85 0 unknown 86 0 unknown 87 0 unknown 88 0 unknown 89 0 unknown 90 0 unknown 91 0 unknown 92 0 unknown 93 0 unknown 94 0 unknown 95 0.10039789 0 96 -0.059605163 0 97 0 unknown 98 0 unknown 99 0 unknown 100 0.031974629 0 101 0 unknown 102 0 unknown 103 0 unknown 104 0 unknown 105 0 unknown 106 0 unknown 107 0.1005537 0 108 0 unknown 109 0 unknown 110 0 unknown 111 -0.090138374 0 112 -0.066826276 0 113 0.51554721 0 114 0 unknown 115 0 unknown

-- Calculate properties -- Semi-grand canonical ensemble: Thermodynamic potential (per unitcell), phi = -kTln(Z)/N Partition function, Z = sum_i exp(-Npotential_energy_i/kT) composition, comp_n = origin + M * comp_x parametric chemical potential, param_chem_pot = M.transpose() * chem_pot potential_energy (per unitcell) = formation_energy - param_chem_pot*comp_x

components: [ "H", "Va", "O", "Ru" ] M: -3 3 0 0 origin: 3 0 16 8 comp_n: 3 0 16 8 comp_x: 0 param_chem_pot: -4 param_chem_potcomp_x: -0 formation_energy: -0.068239416 formation_energy - param_chem_potcomp_x: -0.068239416 potential_energy: -0.068239416

-- Continue with existing DoF --

-- Write: DoF -- write: "/dartfs-hpc/scratch/f00765y/casm-prim/mc/superduper-prim-8161/conditions.0/initial_state.json"

-- Begin: Conditions 0 --

-- Propose event -- Mutating site (linear index): 294 Mutating site (b, i, j, k): 2, 6 4 0 Current occupant: 0 (H) Proposed occupant: 1 (Va)

beta: 38.681687 T: 300 -- Calculate: delta correlations -- i ECI dCorr 0 -0.068239416 0 1 -0.4921608 0 2 -0.57513597 0 3 -0.32782943 1 4 0.76020089 0 5 0 unknown 6 0.40752985 0 7 0.078196956 -0 8 0.48753443 0 9 0.34770401 0 10 0 unknown 11 0 unknown 12 0 unknown 13 0 unknown 14 0.090237286 -0 15 0.17759015 -0 16 0.053180584 -0 17 0.35700289 0 18 0 unknown 19 0 unknown 20 0 unknown 21 0 unknown 22 0 unknown 23 0 unknown 24 0 unknown 25 0.040641532 -0 26 -0.026265846 0 27 -0.054149559 0 28 -0.065024059 -0 29 0 unknown 30 0 unknown 31 0.080827808 0 32 0.056867848 -0 33 0 unknown 34 0 unknown 35 0 unknown 36 0.024185671 0 37 0 unknown 38 0 unknown 39 0.021329173 0 40 0 unknown 41 0.026053415 -0 42 0 unknown 43 0 unknown 44 0 unknown 45 0 unknown 46 0 unknown 47 0.023257662 -0 48 -0.034457234 0 49 0 unknown 50 0 unknown 51 0 unknown 52 0 unknown 53 0 unknown 54 0 unknown 55 0 unknown 56 0 unknown 57 0 unknown 58 -0.034730982 0 59 0 unknown 60 0 unknown 61 -0.25941284 0 62 -0.63137492 0 63 0 unknown 64 0.057646228 0 65 0 unknown 66 -0.07092499 0 67 0.10580814 0 68 -0.057282828 0 69 0 unknown 70 0 unknown 71 -0.180348 0 72 0 unknown 73 0 unknown 74 0 unknown 75 0 unknown 76 0 unknown 77 -0.41974011 0 78 -0.48033532 0 79 0.038775982 0 80 0 unknown 81 0 unknown 82 0 unknown 83 0 unknown 84 0 unknown 85 0 unknown 86 0 unknown 87 0 unknown 88 0 unknown 89 0 unknown 90 0 unknown 91 0 unknown 92 0 unknown 93 0 unknown 94 0 unknown 95 0.10039789 0 96 -0.059605163 0 97 0 unknown 98 0 unknown 99 0 unknown 100 0.031974629 0 101 0 unknown 102 0 unknown 103 0 unknown 104 0 unknown 105 0 unknown 106 0 unknown 107 0.1005537 -0 108 0 unknown 109 0 unknown 110 0 unknown 111 -0.090138374 -0 112 -0.066826276 -0 113 0.51554721 0 114 0 unknown 115 0 unknown

components: [ "H", "Va", "O", "Ru" ] d(N): -1 1 0 0 dx_dn: -0.16666667 0.16666667 0 0 param_chem_pot.transpose() * dx_dn: 0.66666667 -0.66666667 0 0 param_chem_pot.transpose() * dx_dn * dN: -1.3333333 d(Nunit * param_chem_pot * x): -1.3333333 d(Ef): -0.32782943 d(Epot): 1.0055039

-- Check event -- Probability to accept: 1.2832034e-17 Random number: 0.89492994

-- Reject Event --

`

sjtuzhanglei avatar Dec 19 '23 00:12 sjtuzhanglei

We've recently written an article describing CASM Monte Carlo methods, including the parametric composition axes and exchange chemical potentials (param_chem_pot) defined in terms of those axes, which are used in semi-grand canonical free energy defintion that might be useful in understanding this output. The preprint is available here.

The parametric composition axes are a choice of independent composition axes. For example, a binary has a single independent composition axis, a ternary has two, etc. If the occupants allowed on different sublattices vary, then the situation is a bit more complex, but can still be figured out.

linear index: the i-th atom in the supercell written in the element order of the prim.json ?

The occupation of a configuration in a particular supercell is stored as a linear vector of int. The order is in sublattice blocks (i.e. the first N_volume are sublattice 0, the second N_volume are sublattice 1, etc. where N_volume is the supercell volume as a multiple of the prim volume). You can query the particular coordinate associated with each linear site index using ccasm info.

b, i, j, k: lattice site 2 (starting at 0?) in the suprecell written in the element order of the prim.json ? What does 1 and 14 mean?

b=sublattice index, (i,j,k)=fractional coordinates of the unit cell containing the site. Also see ccasm info.

dCorr: change of correlations (aka, occupations) due to the proposed swap

Change in the correlations (cluster expansion basis functions normalized per supercell) due to the proposed swap.

What is M?

In the preprint, M is renamed Q, as defined in equation (2).

d(N)?

The change in total number of each occupant type due to the proposed event.

dx_dn?

The left pseudoinverse of Q, called R^T in the preprint. Here x refers to the parametric composition and n the number per unit cell composition, as in the preprint.

Why we need to define a so-called param_chem_pot, and how it is defined?

In the preprint, this is the exchange chemical potential, required for semi-grand canonical calculations because the number of sites is conserved.

d(Nunit * param_chem_pot * x)?

The change in the semi-grand canonical generalized enthalpy due to the exchange chemical potential and change in composition, see Eq. 28 and the following paragraph.

comp_x?

The parametric composition, x in the preprint.

bpuchala avatar Dec 21 '23 04:12 bpuchala