|
I am generating amorphous structures using evolutionary algorithm with simmate. @property
def individuals(self):
# note we don't call "all()" on this queryset yet becuase this property
# it often used as a "base" queryset (and additional filters are added)
composition = Composition(self.composition)
return self.individuals_datatable.objects.filter(
# You'd expect this filter to be...
# formula_full=self.composition
# However, this misses structures that are reduced to a smaller
# unitcells during relaxation. Therefore, by default, we need to
# include all individuals that have fewer nsites. This is
# often what a user wants anyways during searches, so it works out.
formula_reduced=composition.reduced_formula,
nsites__lte=composition.num_atoms,
workflow_name=self.subworkflow_name,
) |
Replies: 1 comment
|
The
Neither of these are easy to address... For 1, the best we can do is turn off symmetry checks (currently I have things fixed at like a 0.1Ang tol I think), which will make any search very inefficient. For 2, I have this enabled so that results from smaller searches can be used to speed up more complex searches. We can add an options to disable each, but my impression is that those changes will still amorphous searches more than they help |
The
fixed-compositionworkflow doesn't mess with your stoich at all -- so there isn't a reducing step like you suggest. If you are seeing reduced compositions, one of two things is happening:Neither of these are easy to address... For 1, the best we can do is turn off symmetry checks (currently I have things fixed at like a 0.1Ang tol I think), which will make any search very inefficient. For 2, I have this enabled so that results from smaller searches can be used to speed up more complex searches…