Skip to content

General Radial Embedding  #11

@cortner

Description

@cortner

The equivariant_model is too rigid - as a user of the package / developer of models, I want to specify an arbitrary radial embedding. Here "radial" is a substitute for embedding everything that is invariant.

Specifically, I want to allow models that have Rnl and Ylm. The Rnl is just a function of xj i.e Rnl(xj) is some vector (embedding / basis). All the information how xj is transformed and then a basis is applied is hidden in there. The user/developer must guarantee that Rnl is invariant.

So the calling convention should be

radial, radial_spec = ... # construct the radial embedding
equivariant_model(AAspec, maxL, radial, radial_spec)

The radial basis is so application specific that it should not be automatically generated, i.e., no default. But we can provide a few simple radial basis sets.

The radial_spec could also be stored inside radial if we can give it meta information. It's just a list of (n, l) tuples, i.e.,

radial_spec = [ (n = 0, l = 0), (n = 1, l = 0), ... ] 

@zhanglw0521

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions