Model Chi Multi-Species¶
Arguments:
type (string) - Name of the model to use (ChiMultiSpecies)
Nref (float) - Reference degree of polymerization
bref (float) - Reference statistical segment length
initfields (json object) - Describes how to initialize fields within model. See Initialize Model Fields
C or rho0 (float) - System density \(C = \rho_0 R_g^3 / N_{ref}\). Only one can be specified. Default: C=1.
inverse_zetaN or zeta (float) - Helfand compressibility parameter \(\zeta\), optionally multiplied by Nref and inverted (i.e. \((\zeta N)^{-1}\)). Cannot be specified if inverse_BC or B or u0 are specified. Default: inverse_zetaN = 0 (incompressible)
inverse_BC or B or u0 (float) - Excluded volume incompressiblity. \(B =\beta u_0 N^2 / R_g^3\) is the dimensionless excluded volume and \(C = n R_g^3 / V\). Cannot be specified if inverse_zetaN or zeta are specified.
Note
Only one compressibility parameter (i.e. u0, B, zeta, inverse_zetaN or inverse_BC) can be specified.
chiN_array or chi_array (float array) - Flory-Huggins \(\chi\) parameters, optionally multiplied Nref. Ordering of array elements are \({\chi_1, \chi_2, \chi_3, ...}\) and correspond to the upper diagonal of the \(\pmb{\chi}\) interaction matrix.
chiN_diagonal or chi_diagonal (float array) - Flory-Huggins \(\chi^s_{ii}\) self interaction parameters, optionally multiplied Nref. This can be used to make some species more or less compressible than others. Length of array should be equal to number of species and corresponds to the diagonal elements of the \(\pmb{\chi}\) interaction matrix. Ordering of elements are \({\chi^s_{11}, \chi^{s}_{22}, \chi^s_{33}, ...}\)
For a 3 species model:
For a 4 species model:
Example (python)
chiN = 30.0
fts.model(Nref=1.0,bref=1.0,inverse_zetaN=0.01,chiN_array=[chiN, chiN, chiN],type='ChiMultiSpecies')
...
# to initialize EXCHANGE fields
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_1')
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_2')
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_3')
# to initialize SPECIES fields
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_A')
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_B')
fts.init_model_field(type='random',mean=0.0,stdev=1.0,fieldname='mu_C')
...
# three species must be present
fts.add_species(label='A',stat_segment_length=1.0)
fts.add_species(label='B',stat_segment_length=1.0)
fts.add_species(label='C',stat_segment_length=1.0)
Example (json)
"model": {
"type": "ChiMultiSpecies"
"Nref": 1.0,
"bref": 1.0,
"chiN_array": [20,40,20] ,
"initfields": {
... see "Initialize Model Fields" ...
...
# three species must be present
fts.add_species(label='A',stat_segment_length=1.0)
fts.add_species(label='B',stat_segment_length=1.0)
fts.add_species(label='C',stat_segment_length=1.0)
Example (json)
"model": {
"type": "ChiMultiSpecies"
"Nref": 1.0,
"bref": 1.0,
"chiN_array": [20,40,20] ,
"initfields": {
... see "Initialize Model Fields" ...
...
# three species must be present
fts.add_species(label='A',stat_segment_length=1.0)
fts.add_species(label='B',stat_segment_length=1.0)
fts.add_species(label='C',stat_segment_length=1.0)
Example (json)
"model": {
"type": "ChiMultiSpecies"
"Nref": 1.0,
"bref": 1.0,
"chiN_array": [20,40,20] ,
"initfields": {
... see "Initialize Model Fields" ...
},
},
Model Chi Multi-Species Formalism¶
TODO: add bold math using pmb{}
A detailed description and derivation of this model is given in Duchs2014. Here, we only reproduce the most important results.
Incompressible model¶
\(V\) : volume
\(P\) : number of different types of molecules
\(n_p\) : number of molecules of type \(p\in[1,P]\)
\(n\) : total molelecules (\(n=\sum_{p=1}^{P} n_p\))
\(N_p\): length of p th molecule. \(N_p = \alpha_p N\) where N denotes a reference chain length
\(S\): number of distinct chemical species
\(\rho_0 = \frac{1}{V} \sum_{p=1}^P n_p N_P\) and \(\mathcal{v}_0 = 1/\rho_0\)
\(\hat{\rho}_j(\pmb{r}) = \sum_{p=1}^P \sum_{i=1}^{n_P} \int_{s \in j} ds \, \delta \left(\pmb{r} - \pmb{r}_i^p(s) \right)\)
\(\beta U_0\) : energy contribution from chain connectivity (depends on chain model)
\(\beta U_1\) : energy contribution from non-bonded interactions
\(\underline{\rho}^T = (\hat{\rho}_1, ... , \hat{\rho}_S\)
\(\underline{\underline{\chi}} = (\chi_{ij})\) for \(i,j = [1,S]\). Note that \(\chi_{ii} = 0\) and \(\chi_{ij} = \chi_{ji}\)
From this model, the following field theory can be derived.
\(Z_0\): constant given in appendix
\(\mu_1,...\mu_{S-1},\mu_+\): auxilary exchange mapped fields
\(\psi_1,...\psi_S\): species chemical potential fields
\(d_i\) and \(O_{ij}\) are eigenvalues and eigenvectors of \(X_{ij} = \chi_{ij}N - 2\chi_{iS}N\). Note \(X_{ij}\) is a \(S-1 \times S-1\) matrix.
\(C=\frac{\rho_0}{R_g^3}{N}\)
\(\phi_p\): volume fraction of p th molecule. \(\sum_{p=1}^P \phi_p = 1\)
\(\underline{\underline{A}}\) is a \(S \times S\) matrix that converts from exchange fields to species fields:
The forces are