StructureData
discussion
#43
Replies: 6 comments
-
Duplication of the information in the AiiDA databaseThis other issue is coming from the fact that indeed in the database we store both the sites as list of dictionaries (with all the properties), both the property as single lists. {'pbc': [True, True, True],
'cell': [[0.0, 1.8, 1.8], [1.8, 0.0, 1.8], [1.8, 1.8, 0.0]],
'custom': None,
'sites': [{'symbol': 'Cu',
'kind_name': 'Cu0',
'position': [0.0, 0.0, 0.0],
'mass': 63.546,
'charge': 1.0,
'magmom': [0.0, 0.0, 0.0],
'weights': (1,)}],
'cell_volume': 11.664000000000001,
'dimensionality': {'dim': 3, 'label': 'volume', 'value': 11.664000000000001},
'charges': [1.0],
'magmoms': [[0.0, 0.0, 0.0]],
'masses': [63.546],
'kinds': ['Cu0'],
'symbols': ['Cu'],
'positions': [[0.0, 0.0, 0.0]],
'formula': 'Cu'} So there is a duplication of information (e.g. Update (October 2nd 2024) - SOLVEDNow, the {'pbc': [True, True, True],
'cell': [[0.0, 1.8, 1.8], [1.8, 0.0, 1.8], [1.8, 1.8, 0.0]],
'cell_volume': 11.664000000000001,
'dimensionality': {'dim': 3, 'label': 'volume', 'value': 11.664000000000001},
'charges': [1.0],
'magmoms': [[0.0, 0.0, 0.0]],
'masses': [63.546],
'kinds': ['Cu0'],
'symbols': ['Cu'],
'positions': [[0.0, 0.0, 0.0]],
'formula': 'Cu'} i.e. no duplication of the information. The |
Beta Was this translation helpful? Give feedback.
-
Input parameters for the constructor. Two choices.The implemented way of providing the inputs is by means of a dictionary where the properties are actually attached to each site, so having a list of dictionaries, each of them corresponding to a site. This is also done because we initialise and store the model in the same format, in the AiiDA database. structure_dict = {
'pbc':[True,True,True],
'symbols':["Cu","Cu"],
'positions':[...],
'charges':[1,-1],
...
} In this way, we then generated the sites as Update (October 2nd 2024) - IN PROGRESSNow we support both type of inputs for the constructor, i.e. both providing a list of sites with the properties for each sites, both providing properties as lists, each element corresponding to a site (as described above). |
Beta Was this translation helpful? Give feedback.
-
Custom propertiesThere is the risk that someone will name the custom properties as the supported ones. This is an experimental feature only for the pilot phase, then we should somehow provide a protocol to do a PR to |
Beta Was this translation helpful? Give feedback.
-
Kinds generation cannot happen on-the-fly after calcjob submissionThis is because for different versions of the plugins (and so maybe different kind thresholds) we can then have different resulting structures. This can create inconsistencies. |
Beta Was this translation helpful? Give feedback.
-
Should we move some of the properties in files?If we don't need (or we cannot) to query them, yes. |
Beta Was this translation helpful? Give feedback.
-
QueryThis is crucial, we need to understand if we can efficiently query for a structure. This determines also what we will store in the db.
what about querying inner lists? for |
Beta Was this translation helpful? Give feedback.
-
This was the discussion during a first internal demo of the new
StructureData
.Two classes for
StructureData
. NamingsThe first concern is about the two twin classes,
StructureData
andStructureDataMutable
.The naming should be discussed more, in particular for
StructureDataMutable
. A solution could be to just let the user work with theStructureDataMutable
and then automatically convert/serialize into the AiiDAStructureData
. However, when the user try to load/query aStructureData
node, this is the immutable one.Should we rename to be
StructureDataNode
the immutable andStructureData
the mutable? In this way we know that one is really an AiiDA node and cannot change. This would be consistent (somehow) with the definition ofProcess
andProcessNode
(stored in the db) - to be discussed more (see future AEP by @edan-bainglass ).More about names, the "direct" properties should be renamed "global".
Update (October 2nd 2024)
Now, we have no more "direct"/"global" properties, we dropped the distinction for simplicity and because this information was not actually used anywhere.
Beta Was this translation helpful? Give feedback.
All reactions