PhysicalProperty
definition (02.04.2024 discussion)
#39
Replies: 4 comments 1 reply
-
Thank you for summarizing the takeaways of yesterday's discussion. First a couple of remarks on your suggestion, then my own. RemarksFirstly, the interface in your suggestion mostly aligns with Now, in your application, why are there these properties like I do want to caution against overusing references: I have serious doubts how well NOMAD can handle massive volume of them. They're more a patch for some scenarios, not a main tool. We should really ask Area D about this or perform a benchmark. In some cases, they can be avoided by grouping together Small note: if we have the Lastly, the extension of ProposalSo, my heuristic for deciding whether something goes to
Regarding @JFRudzinski 's point on the complexity of error bars: likely we need an interface which can host different error definitions (their own type). |
Beta Was this translation helpful? Give feedback.
-
Okay, one big conceptual question that I still have: what are the actual objective of Pls don't get into errors, binning, time series, etc.: each of these can be tackled more succinctly, e.g. new meta-type, new |
Beta Was this translation helpful? Give feedback.
-
@ndaelman-hu we decided to go with class Outputs(ArchiveSection):
model_system_ref = ...
electronic_band_gap = SubSection(ElectronicBandGap(PhysicalProperty).m_def)
electronic_dos = SubSection(ElectronicDOS(PhysicalProperty).m_def)
specific_heat = SubSection(SpecificHeat(PhysicalProperty).m_def)
... Still, we were talking that we should also use some methods from Quantity, mainly, setting and getting the We also need more checks regarding We also talked about including refs within As you see there is some functionalities need to be implemented, but now we have a more clear design idea:
This is more or less the idea. |
Beta Was this translation helpful? Give feedback.
-
I appreciate the summary and the questioning...but I suggest that we discuss this more at our meeting on Mon, rather than spending a lot of energy arguing all these points in detail in writing here. Feel free to continue to discuss, but I need to formulate my ideas and let the things discussed yesterday and today sit before I am ready to discuss again |
Beta Was this translation helpful? Give feedback.
-
@JFRudzinski @ndaelman-hu @Bernadette-Mohr
It is clear that, whatever the final design of
Outputs
is, we need some further abstraction to store the value, errors, bins, and other id strings for our properties.It was proposed by @JFRudzinski to define
PhysicalProperty
as anArchiveSection
. An alternative way would be to inherit fromQuantity
instead, and define avalue
for setting thePhysicalProperty
itself.Both options have pros and cons:
Inheriting from
ArchiveSection
Outputs
and the references defined thereInheriting from
Quantity
__set__()
. Not sure if this is not true forArchiveSection
tho.value
andvalue_error
should be the same.Besides these, I wonder how the actual implementation of
variables
as a list of potential variables[Energy, Temperature...]
could look like. I have some idea to define the shape of a PhysicalProperty as:Now, IMO, the call for a PhysicalProperty could look like:
Beta Was this translation helpful? Give feedback.
All reactions