sqsgenerator icon indicating copy to clipboard operation
sqsgenerator copied to clipboard

Multiple sub lattice optimisation

Open dgehringer opened this issue 11 months ago • 0 comments
trafficstars

In contrast what do you think about truly allowing for a multiple sub lattice optimisation. Because the current way of doing it is not 100% clean.

Especially setting the prefactor mode with mul is a pretty bad and tacky workaround which just works for this constructed example, and a few limited cases!

My idea goes something like this!

  • I'd start with the requirement of mutual exclusive sublattices (SL)

    • each site belongs to exactly one SL
    • the SLs do not interact with each other
  • Given $\Delta$ sublattices, one would not not only compute the SRO parameter $\alpha^i_{\xi\eta}$ for each species pair and each shell but also for each sub lattice

    • we would have to add one dimension to the SRO parameter $\alpha^{I,\Delta}_{\xi\eta}$
    • Note that the set of species might be different for each sub lattice, hence the size of the $\alpha^{I,\Delta}_{\xi\eta}$ tensor varies for each SL $\Delta$ which hence becomes a 4D
  • then compute the Objective function individually for each SL and optimise for a weighted (by the number of atoms on the sub lattice) sum of the objective function $O(\sigma) = \sum_\Delta \frac{N^\Delta}{N} O^{\Delta}(\sigma)$

  • then you the the refactors correctly which is hard to do with the current set up

Does this make sense? Do you think that this would be used?

Originally posted by @dgehringer in https://github.com/dgehringer/sqsgenerator/discussions/49#discussioncomment-11477122

dgehringer avatar Dec 07 '24 08:12 dgehringer