Beispiel #1
0
 class Meta(AtomRelation.Meta):
     properties = [
         PropIntel(name="sum",
                   label="Sum",
                   data_type=float,
                   widget_type='float_entry',
                   is_column=True,
                   storable=True,
                   has_widget=True,
                   minimum=0.0),
         PropIntel(name="atom1",
                   label="Substituting Atom",
                   data_type=object,
                   is_column=True,
                   storable=True,
                   has_widget=True),
         PropIntel(name="atom2",
                   label="Original Atom",
                   data_type=object,
                   is_column=True,
                   storable=True,
                   has_widget=True),
     ]
     store_id = "AtomRatio"
     allowed_relations = {
         "AtomRatio": [
             ("__internal_sum__", lambda o: "%s: SUM" % o.name),
             ("value", lambda o: "%s: RATIO" % o.name),
         ],
         "AtomContents": [("value", lambda o: o.name)],
     }
Beispiel #2
0
 class Meta(DataModel.Meta):
     properties = [  # TODO add labels
         OptionPropIntel(name="pattern",
                         data_type=str,
                         storable=True,
                         has_widget=True,
                         options={
                             "exp": "Experimental Pattern",
                             "calc": "Calculated Pattern"
                         }),
         PropIntel(name="max_threshold",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="steps",
                   data_type=int,
                   storable=True,
                   has_widget=True),
         PropIntel(name="sel_threshold",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="sel_num_peaks",
                   data_type=int,
                   storable=True,
                   has_widget=True,
                   widget_type="label"),
         PropIntel(name="threshold_plot_data",
                   data_type=object,
                   storable=True),
     ]
Beispiel #3
0
 class Meta(PyXRDModel.Meta):
     properties = [
         PropIntel(name="current_project", observable=True),
         PropIntel(name="current_specimen", observable=True),
         PropIntel(name="current_specimens", observable=True),
         PropIntel(name="needs_plot_update", observable=True)
     ]
Beispiel #4
0
 class Meta(DataModel.Meta):
     properties = [
         PropIntel(name="name",
                   label="Name",
                   data_type=unicode,
                   is_column=True,
                   storable=True,
                   has_widget=True),
         PropIntel(name="value",
                   label="Value",
                   data_type=float,
                   is_column=True,
                   storable=True,
                   has_widget=True,
                   widget_type='float_entry',
                   refinable=True),
         PropIntel(name="enabled",
                   label="Enabled",
                   data_type=bool,
                   is_column=True,
                   storable=True,
                   has_widget=True),
         PropIntel(name="driven_by_other",
                   label="Driven by other",
                   data_type=bool,
                   is_column=True,
                   storable=False,
                   has_widget=False)
     ]
     store_id = "AtomRelation"
     file_filters = [
         ("Atom relation", get_case_insensitive_glob("*.atr")),
     ]
     allowed_relations = {}
Beispiel #5
0
 class Meta(ChildModel.Meta):
     properties = [  # TODO add labels
         PropIntel(name="refinables",
                   label="",
                   has_widget=True,
                   data_type=object,
                   is_column=True,
                   widget_type="object_tree_view",
                   class_type=RefinableWrapper),
         PropIntel(name="refine_options",
                   label="",
                   data_type=dict,
                   is_column=False),
         OptionPropIntel(
             name="refine_method_index",
             label="Refinement method index",
             has_widget=True,
             data_type=int,
             options={
                 key: method.name
                 for key, method in
                 RefineMethodManager.get_all_methods().iteritems()
             }),
         PropIntel(name="make_psp_plots",
                   label="",
                   data_type=bool,
                   is_colum=False,
                   has_widget=True,
                   storable=False),
     ]
     store_id = "Refinement"
Beispiel #6
0
 class Meta(PyXRDModel.Meta, Storable.Meta):
     store_id = "RefinementInfo"
     properties = [
         PropIntel(name="minimum", data_type=float, storable=True),
         PropIntel(name="maximum", data_type=float, storable=True),
         PropIntel(name="refine", data_type=bool, storable=True),
     ]
Beispiel #7
0
 class Meta(DataModel.Meta):
     properties = [
         PropIntel(name="matches", data_type=list, has_widget=True),
         PropIntel(name="minerals", data_type=list, has_widget=True),
         PropIntel(name="matches_changed",
                   data_type=object,
                   has_widget=False,
                   storable=False)
     ]
Beispiel #8
0
 class Meta(DataModel.Meta):
     description = "Abstract CSDS distr."
     explanation = ""
     properties = [
         PropIntel(name="distrib",
                   label="CSDS Distribution",
                   data_type=object,
                   is_column=True),
         PropIntel(name="inherited", label="Inherited", data_type=bool),
     ]
Beispiel #9
0
 class Meta(AbstractPhase.Meta):
     properties = [
         PropIntel(name="display_color", data_type=str, label="Display color", is_column=True, has_widget=True, widget_type='color', storable=True),
         PropIntel(name="raw_pattern", label="Raw pattern", data_type=object, is_column=True, storable=True, has_widget=True, widget_type="xy_list_view"),
     ]
     store_id = "RawPatternPhase"
     file_filters = [
         ("Phase file", get_case_insensitive_glob("*.PHS")),
     ]
     rp_filters = xrd_parsers.get_import_file_filters()
     rp_export_filters = xrd_parsers.get_export_file_filters()
Beispiel #10
0
 class Meta(Model.Meta):
     properties = [
         PropIntel(name="atom",
                   label="Atom",
                   data_type=object,
                   is_column=True),
         PropIntel(name="prop",
                   label="Prop",
                   data_type=object,
                   is_column=True),
         PropIntel(name="amount",
                   label="Amount",
                   data_type=float,
                   is_column=True,
                   minimum=0.0),
     ]
Beispiel #11
0
 class Meta(DataModel.Meta):
     independent_label_map = []
     properties = [
         PropIntel(name="name",
                   inh_name=None,
                   label="Probabilities",
                   data_type=unicode),
         PropIntel(name="W_valid",
                   inh_name=None,
                   label="Valid W matrix",
                   data_type=object),
         PropIntel(name="P_valid",
                   inh_name=None,
                   label="Valid P matrix",
                   data_type=object),
     ]
Beispiel #12
0
 class Meta(ChildModel.Meta):
     properties = [ # TODO add labels
         PropIntel(name="points", data_type=int, has_widget=True),
         PropIntel(name="residual_pattern", data_type=object),
         PropIntel(name="der_exp_pattern", data_type=object),
         PropIntel(name="der_calc_pattern", data_type=object),
         PropIntel(name="der_residual_pattern", data_type=object),
         PropIntel(name="Rp", data_type=float, has_widget=True),
         PropIntel(name="Rpder", data_type=float, has_widget=True),
         PropIntel(name="Rwp", data_type=float, has_widget=True),
     ]
Beispiel #13
0
 class _R0Meta(_AbstractProbability.Meta):
     store_id = "R0G%dModel" % pasG
     properties = [
         PropIntel(
             name="F%d" % (g + 1), minimum=0.0, maximum=1.0, default=0.8,
             label="W%(g)d/Sum(W%(g)d+...+W%(G)d)" % {'g':g + 1, 'G':pasG },
             math_label=r"$\large\frac{W_{%(g)d}}{\sum_{i=%(g)d}^{%(G)d} W_i}$" % {'g':g + 1, 'G':pasG },
             data_type=float, refinable=True, storable=True, has_widget=True,
             is_independent=True, # flag for the view creation
             stor_name="_F%d" % (g + 1),
             inh_name="inherit_F%d" % (g + 1), inh_from="parent.based_on.probabilities") \
             for g in range(pasG - 1)
     ] + [
         PropIntel(name="inherit_F%d" % (g + 1), label="Inherit flag for F%d" % (g + 1),
             data_type=bool, refinable=False, storable=True, has_widget=True,
             default=False,
             widget_type="toggle") \
             for g in range(pasG - 1)
     ]
Beispiel #14
0
 class Meta(DataModel.Meta):
     properties = [ # TODO add labels
         PropIntel(name="name", label="Name", data_type=str, storable=True, has_widget=True, is_column=True),
         PropIntel(name="refinables", label="", data_type=object, widget_type="object_tree_view", class_type=RefinableWrapper),
         PropIntel(name="refine_options", label="", data_type=dict, storable=True, stor_name="all_refine_options"),
         PropIntel(name="refine_method_index", label="", data_type=int, storable=True),
         PropIntel(name="auto_run", label="", data_type=bool, is_column=True, storable=True, has_widget=True),
         PropIntel(name="auto_bg", label="", data_type=bool, is_column=True, storable=True, has_widget=True),
         PropIntel(name="needs_update", label="", data_type=object, storable=False), # Signal used to indicate the mixture needs an update
         PropIntel(name="needs_reset", label="", data_type=object, storable=False,), # Signal used to indicate the mixture matrix needs to be re-built...
     ]
     store_id = "Mixture"
Beispiel #15
0
 class Meta(AbstractPhase.Meta):
     properties = [
         PropIntel(name="based_on", data_type=object, label="Based on phase", is_column=True, has_widget=True, widget_type='custom'),
         PropIntel(name="sigma_star", data_type=float, label="σ* [°]", math_label="$\sigma^*$ [°]", is_column=True, has_widget=True, storable=True, refinable=True, minimum=0.0, maximum=90.0, inh_name="inherit_sigma_star", stor_name="_sigma_star", inh_from="based_on"),
         PropIntel(name="display_color", data_type=str, label="Display color", is_column=True, has_widget=True, widget_type='color', storable=True, inh_name="inherit_display_color", stor_name="_display_color", inh_from="based_on"),
         PropIntel(name="inherit_sigma_star", data_type=bool, label="Inh. sigma star", is_column=True, has_widget=True, storable=True),
         PropIntel(name="inherit_display_color", data_type=bool, label="Inh. display color", is_column=True, has_widget=True, storable=True),
         PropIntel(name="inherit_CSDS_distribution", data_type=bool, label="Inh. mean CSDS", is_column=True, has_widget=True, storable=True),
         PropIntel(name="CSDS_distribution", data_type=object, label="CSDS Distribution", is_column=True, has_widget=True, storable=True, refinable=True, widget_type="custom", inh_name="inherit_CSDS_distribution", stor_name="_CSDS_distribution", inh_from="based_on"),
         PropIntel(name="probabilities", data_type=object, label="Probabilities", is_column=True, has_widget=True, storable=True, refinable=True, widget_type="custom"),
         PropIntel(name="components", data_type=object, label="Components", is_column=True, has_widget=True, storable=True, refinable=True, widget_type="custom", class_type=Component),
     ]
     store_id = "Phase"
     file_filters = [
         ("Phase file", get_case_insensitive_glob("*.PHS")),
     ]
Beispiel #16
0
 class Meta(DataModel.Meta):
     store_id = "AtomType"
     properties = [
         PropIntel(name="atom_nr", label="Atom Nr", data_type=int, widget_type="entry", **PropIntel.ST_WID_COL),
         PropIntel(name="name", label="Name", data_type=unicode, **PropIntel.ST_WID_COL),
         PropIntel(name="charge", label="Charge", data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL),
         PropIntel(name="weight", label="Atomic weight", data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL),
         PropIntel(name="debye", label="Debye-Waller factor", data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL),
         PropIntel(name="par_c", label="c", data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL),
     ] + [
         PropIntel(name="par_a%d" % i, label="a%d" % i, data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL) for i in xrange(1, 6)
     ] + [
         PropIntel(name="par_b%d" % i, label="b%d" % i, data_type=float, widget_type="float_entry", **PropIntel.ST_WID_COL) for i in xrange(1, 6)
     ]
     csv_storables = [(prop.name, prop.name) for prop in properties if prop.storable]
Beispiel #17
0
    class Meta(_AbstractProbability.Meta):
        ind_properties = [
            PropIntel(
                name="W1",
                label="W1",
                math_label=r"$W_1$",
                stor_name="_W1",
                inh_name="inherit_W1",
                inh_from="parent.based_on.probabilities",
                is_independent=True,  # flag for the view creation
                minimum=0.0,
                maximum=1.0,
                data_type=float,
                **PropIntel.REF_ST_WID),
            PropIntel(
                name="P11_or_P22",
                label="P11_or_P22",
                stor_name="_P11_or_P22",
                inh_name="inherit_P11_or_P22",
                inh_from="parent.based_on.probabilities",
                is_independent=True,  # flag for the view creation
                math_label=r"$P_{11} %s$ or $\newline P_{22} %s$" %
                (mt_range(0.0, "W_1", 0.5), mt_range(0.5, "W_1", 1.0)),
                minimum=0.0,
                maximum=1.0,
                data_type=float,
                **PropIntel.REF_ST_WID),
        ]
        inh_properties = [
            PropIntel(name="inherit_%s" % prop.name, label="Inherit flag for %s" % prop.name,
                data_type=bool, refinable=False, storable=True, has_widget=True,
                widget_type="toggle") \
                for prop in ind_properties
        ]
        properties = ind_properties + inh_properties

        store_id = "R1G2Model"
Beispiel #18
0
 class Meta(StorableXYData.Meta):
     properties = [
         PropIntel(name="label", data_type=unicode, storable=True),
         PropIntel(name="color", data_type=str, storable=True, has_widget=True, widget_type="color"),
         PropIntel(name="inherit_color", data_type=bool, storable=True, has_widget=True, widget_type="toggle"),
         PropIntel(name="lw", data_type=float, storable=True, has_widget=True, widget_type="spin"),
         PropIntel(name="inherit_lw", data_type=bool, storable=True, has_widget=True, widget_type="toggle"),
         OptionPropIntel(name="ls", data_type=str, storable=True, has_widget=True, options=settings.PATTERN_LINE_STYLES),
         PropIntel(name="inherit_ls", data_type=bool, storable=True, has_widget=True, widget_type="toggle"),
         OptionPropIntel(name="marker", data_type=str, storable=True, has_widget=True, options=settings.PATTERN_MARKERS),
         PropIntel(name="inherit_marker", data_type=bool, storable=True, has_widget=True, widget_type="toggle"),
     ]
     store_id = "PyXRDLine"
     inherit_format = "display_exp_%s"
Beispiel #19
0
 class Meta(_AbstractCSDSDistribution.Meta):
     description = "Log-normal CSDS distr. (Drits et. al, 1997)"
     properties = [
         PropIntel(name="maximum",
                   label="Maximum CSDS",
                   minimum=1,
                   maximum=1000,
                   is_column=True,
                   data_type=float),
         PropIntel(name="minimum",
                   label="Minimum CSDS",
                   minimum=1,
                   maximum=1000,
                   is_column=True,
                   data_type=float),
         PropIntel(name="average",
                   label="Average CSDS",
                   minimum=1,
                   maximum=200,
                   is_column=True,
                   data_type=float,
                   refinable=True,
                   storable=True,
                   has_widget=True),
         PropIntel(name="alpha_scale",
                   label="α scale factor",
                   minimum=0,
                   maximum=10,
                   is_column=True,
                   data_type=float),
         PropIntel(name="alpha_offset",
                   label="α offset factor",
                   minimum=-5,
                   maximum=5,
                   is_column=True,
                   data_type=float),
         PropIntel(name="beta_scale",
                   label="β² scale factor",
                   minimum=0,
                   maximum=10,
                   is_column=True,
                   data_type=float),
         PropIntel(name="beta_offset",
                   label="β² offset factor",
                   minimum=-5,
                   maximum=5,
                   is_column=True,
                   data_type=float),
     ]
     store_id = "DritsCSDSDistribution"
Beispiel #20
0
 class Meta(AtomRelation.Meta):
     properties = [
         PropIntel(name="atom_contents",
                   label="Atom contents",
                   class_type=AtomContentObject,
                   data_type=object,
                   is_column=True,
                   storable=True,
                   has_widget=True),
     ]
     store_id = "AtomContents"
     allowed_relations = {
         "AtomRatio": [
             ("__internal_sum__", lambda o: "%s: SUM" % o.name),
             ("value", lambda o: "%s: RATIO" % o.name),
         ],
     }
Beispiel #21
0
 class Meta(DataModel.Meta):
     store_id = "Atom"
     properties = [ # TODO add labels
         PropIntel(name="name", data_type=unicode, **PropIntel.ST_WID_COL),
         PropIntel(name="default_z", data_type=float, **PropIntel.ST_WID_COL),
         PropIntel(name="z", data_type=float, **PropIntel.WID_COL),
         PropIntel(name="pn", data_type=float, **PropIntel.ST_WID_COL),
         PropIntel(name="atom_type", data_type=object, **PropIntel.WID_COL),
         PropIntel(name="stretch_values", data_type=bool),
     ]
     layer_filters = [
         ("Layer file", get_case_insensitive_glob("*.lyr")),
     ]
Beispiel #22
0
 class Meta(DataModel.Meta):
     properties = [
         PropIntel(name="name",
                   label="Name",
                   data_type=unicode,
                   is_column=True),
         PropIntel(name="value",
                   label="Value",
                   data_type=float,
                   widget_type='float_entry',
                   storable=True,
                   has_widget=True,
                   refinable=True),
         PropIntel(name="factor",
                   label="Factor",
                   data_type=float,
                   widget_type='float_entry',
                   storable=True,
                   has_widget=True),
         PropIntel(name="constant",
                   label="Constant",
                   data_type=float,
                   widget_type='float_entry',
                   storable=True,
                   has_widget=True),
         PropIntel(name="prop",
                   label="Property",
                   data_type=object,
                   widget_type='combo',
                   storable=True,
                   has_widget=True),
         PropIntel(name="enabled",
                   label="Enabled",
                   data_type=bool,
                   storable=True,
                   has_widget=True),
         PropIntel(name="ready", label="Ready", data_type=bool),
         PropIntel(name="inherited", label="Inherited", data_type=bool)
     ]
     store_id = "UnitCellProperty"
Beispiel #23
0
 class Meta(_AbstractProbability.Meta):
     store_id = "R2G3Model"
     ind_properties = [
         PropIntel(name="W1", label="W1 (> 0.5)", math_label=r"$W_1$",
             stor_name="_W1", inh_name="inherit_W1", inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             minimum=0.5, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
         PropIntel(name="P111_or_P212", label="P111 (W1 < 2/3) or\nPx1x (W1 > 2/3)",
             stor_name="_P111_or_P212", inh_name="inherit_P111_or_P212",
             inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             math_label=r"$P_{111} %s$ or $\newline P_{x1x} %s$" % (
             mt_range(0.5, "W_1", 2.0 / 3.0),
             mt_range(2.0 / 3.0, "W_1", 1.0)),
             minimum=0.0, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
         PropIntel(name="G1", label="W2/(W2+W3)", math_label=r"$\large\frac{W_2}{W_3 + W_2}$",
             stor_name="_G1", inh_name="inherit_G1", inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             minimum=0.0, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
         PropIntel(name="G2", label="(W212+W213)/(W212+W213+W312+W313)",
             stor_name="_G2", inh_name="inherit_G2", inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             math_label=r"$\large\frac{W_{212} + W_{213}}{W_{212} + W_{213} + W_{312} + W_{313}}$",
             minimum=0.0, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
         PropIntel(name="G3", label="W212/(W212+W213)",
             stor_name="_G3", inh_name="inherit_G3", inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             math_label=r"$\large\frac{W_{212}}{W_{212} + W_{213}}$",
             minimum=0.0, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
         PropIntel(name="G4", label="W312/(W312+W313)",
             stor_name="_G4", inh_name="inherit_G4", inh_from="parent.based_on.probabilities",
             is_independent=True, # flag for the view creation
             math_label=r"$\large\frac{W_{312}}{W_{312} + W_{313}}$",
             minimum=0.0, maximum=1.0, data_type=float, **PropIntel.REF_ST_WID),
     ]
     inh_properties = [
         PropIntel(name="inherit_%s" % prop.name, label="Inherit flag for %s" % prop.name,
             data_type=bool, refinable=False, storable=True, has_widget=True,
             widget_type="toggle") \
             for prop in ind_properties
     ]
     properties = ind_properties + inh_properties
Beispiel #24
0
 class Meta(PyXRDLine.Meta):
     properties = [
         PropIntel(name="bg_position",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="bg_scale",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="bg_pattern", data_type=object),
         OptionPropIntel(name="bg_type",
                         data_type=int,
                         has_widget=True,
                         options=settings.PATTERN_BG_TYPES),
         PropIntel(name="smooth_degree", data_type=int, has_widget=True),
         OptionPropIntel(name="smooth_type",
                         data_type=int,
                         has_widget=True,
                         options=settings.PATTERN_SMOOTH_TYPES),
         PropIntel(name="noise_fraction",
                   data_type=float,
                   has_widget=True,
                   widget_type="spin"),
         PropIntel(name="shift_value",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         OptionPropIntel(name="shift_position",
                         data_type=float,
                         has_widget=True,
                         options=settings.PATTERN_SHIFT_POSITIONS),
         PropIntel(name="cap_value",
                   data_type=float,
                   has_widget=True,
                   storable=True,
                   widget_type="float_entry"),
         PropIntel(name="area_startx",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="area_endx",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="area_pattern", data_type=object),
         PropIntel(name="area_result",
                   data_type=float,
                   has_widget=True,
                   widget_type="label"),
         PropIntel(name="strip_startx",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="strip_endx",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="noise_level",
                   data_type=float,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="stripped_pattern", data_type=object),
     ]
     store_id = "ExperimentalLine"
Beispiel #25
0
 class Meta(PyXRDLine.Meta):
     properties = [
         PropIntel(name="phase_colors", data_type=list),
     ]
     store_id = "CalculatedLine"
     inherit_format = "display_calc_%s"
Beispiel #26
0
 class Meta(ChildModel.Meta):
     properties = [
         PropIntel(name="data_changed", storable=False),
         PropIntel(name="visuals_changed", storable=False),
     ]
Beispiel #27
0
 class Meta(PyXRDModel.Meta):
     properties = [
         PropIntel(name="parent", data_type=object, storable=False),
         PropIntel(name="removed", data_type=object, storable=False),
         PropIntel(name="added", data_type=object, storable=False),
     ]
Beispiel #28
0
 class Meta(DataModel.Meta):
     properties = [
         PropIntel(name="name",
                   data_type=unicode,
                   label="Name",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="linked_with",
                   data_type=object,
                   label="Linked with",
                   widget_type='custom',
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="d001",
                   data_type=float,
                   label="Cell length c [nm]",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   refinable=True,
                   minimum=0.0,
                   maximum=5.0,
                   inh_name="inherit_d001",
                   stor_name="_d001",
                   inh_from="linked_with"),
         PropIntel(name="lattice_d",
                   data_type=float,
                   label="Lattice c length [nm]"),
         PropIntel(name="default_c",
                   data_type=float,
                   label="Default c length [nm]",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   minimum=0.0,
                   maximum=5.0,
                   inh_name="inherit_default_c",
                   stor_name="_default_c",
                   inh_from="linked_with"),
         PropIntel(name="delta_c",
                   data_type=float,
                   label="C length dev. [nm]",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   refinable=True,
                   minimum=0.0,
                   maximum=0.05,
                   inh_name="inherit_delta_c",
                   stor_name="_delta_c",
                   inh_from="linked_with"),
         PropIntel(name="ucp_a",
                   data_type=object,
                   label="Cell length a [nm]",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   refinable=True,
                   inh_name="inherit_ucp_a",
                   stor_name="_ucp_a",
                   inh_from="linked_with"),
         PropIntel(name="ucp_b",
                   data_type=object,
                   label="Cell length b [nm]",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   refinable=True,
                   inh_name="inherit_ucp_b",
                   stor_name="_ucp_b",
                   inh_from="linked_with"),
         PropIntel(name="inherit_d001",
                   data_type=bool,
                   label="Inh. cell length c",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_ucp_b",
                   data_type=bool,
                   label="Inh. cell length b",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_ucp_a",
                   data_type=bool,
                   label="Inh. cell length a",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_default_c",
                   data_type=bool,
                   label="Inh. default length c",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_delta_c",
                   data_type=bool,
                   label="Inh. c length dev.",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_layer_atoms",
                   data_type=bool,
                   label="Inh. layer atoms",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_interlayer_atoms",
                   data_type=bool,
                   label="Inh. interlayer atoms",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="inherit_atom_relations",
                   data_type=bool,
                   label="Inh. atom relations",
                   is_column=True,
                   has_widget=True,
                   storable=True),
         PropIntel(name="atom_relations",
                   data_type=object,
                   label="Atom relations",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   widget_type="custom",
                   refinable=True,
                   inh_name="inherit_atom_relations",
                   stor_name="_atom_relations",
                   inh_from="linked_with",
                   class_type=AtomRelation),
         PropIntel(name="layer_atoms",
                   data_type=object,
                   label="Layer atoms",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   widget_type="custom",
                   inh_name="inherit_layer_atoms",
                   stor_name="_layer_atoms",
                   inh_from="linked_with",
                   class_type=Atom),
         PropIntel(name="interlayer_atoms",
                   data_type=object,
                   label="Interlayer atoms",
                   is_column=True,
                   has_widget=True,
                   storable=True,
                   widget_type="custom",
                   inh_name="inherit_interlayer_atoms",
                   stor_name="_interlayer_atoms",
                   inh_from="linked_with",
                   class_type=Atom),
         PropIntel(name="atoms_changed",
                   data_type=object,
                   is_column=False,
                   storable=False,
                   has_widget=False)
     ]
     store_id = "Component"
Beispiel #29
0
 class Meta(DataModel.Meta):
     properties = [  # TODO add labels
         PropIntel(name="radius",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="divergence",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="soller1",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="soller2",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="min_2theta",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="max_2theta",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="steps",
                   data_type=int,
                   storable=True,
                   has_widget=True),
         PropIntel(name="wavelength",
                   data_type=float,
                   storable=False,
                   has_widget=False,
                   widget_type="float_entry"),
         PropIntel(name="wavelength_distribution",
                   data_type=object,
                   storable=True,
                   has_widget=True,
                   widget_type="xy_list_view"),
         PropIntel(name="has_ads",
                   data_type=bool,
                   storable=True,
                   has_widget=True),
         PropIntel(name="ads_fact",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="ads_phase_fact",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="ads_phase_shift",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
         PropIntel(name="ads_const",
                   data_type=float,
                   storable=True,
                   has_widget=True,
                   widget_type="float_entry"),
     ]
     store_id = "Goniometer"
Beispiel #30
0
 class Meta(DataModel.Meta):
     properties = [
         PropIntel(name="name",
                   label="Name",
                   data_type=str,
                   **PropIntel.ST_WID),
         PropIntel(name="date",
                   label="Date",
                   data_type=str,
                   **PropIntel.ST_WID),
         PropIntel(name="description",
                   label="Description",
                   data_type=str,
                   widget_type="text_view",
                   **PropIntel.ST_WID),
         PropIntel(name="author",
                   label="Author",
                   data_type=str,
                   **PropIntel.ST_WID),
         OptionPropIntel(name="layout_mode",
                         label="Layout mode",
                         data_type=str,
                         options=settings.DEFAULT_LAYOUTS,
                         **PropIntel.ST_WID),
         PropIntel(name="display_marker_color",
                   label="Color",
                   data_type=str,
                   widget_type="color",
                   **PropIntel.ST_WID),
         PropIntel(name="display_marker_top_offset",
                   label="Offset from base",
                   data_type=float,
                   widget_type="float_entry",
                   **PropIntel.ST_WID),
         PropIntel(name="display_marker_angle",
                   label="Angle",
                   data_type=float,
                   widget_type="float_entry",
                   **PropIntel.ST_WID),
         OptionPropIntel(name="display_marker_align",
                         label="Label alignment",
                         data_type=str,
                         options=settings.MARKER_ALIGNS,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_marker_base",
                         label="Base connection",
                         data_type=int,
                         options=settings.MARKER_BASES,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_marker_top",
                         label="Top connection",
                         data_type=int,
                         options=settings.MARKER_TOPS,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_marker_style",
                         label="Line style",
                         data_type=str,
                         options=settings.MARKER_STYLES,
                         **PropIntel.ST_WID),
         PropIntel(name="display_calc_color",
                   label="Calculated color",
                   data_type=str,
                   widget_type="color",
                   **PropIntel.ST_WID),
         PropIntel(name="display_exp_color",
                   label="Experimental color",
                   data_type=str,
                   widget_type="color",
                   **PropIntel.ST_WID),
         PropIntel(name="display_calc_lw",
                   label="Calculated linewidth",
                   data_type=int,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="display_exp_lw",
                   label="Experimental linewidth",
                   data_type=int,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         OptionPropIntel(name="display_calc_ls",
                         label="Calculated linestyle",
                         data_type=str,
                         options=settings.PATTERN_LINE_STYLES,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_exp_ls",
                         label="Experimental linestyle",
                         data_type=str,
                         options=settings.PATTERN_LINE_STYLES,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_calc_marker",
                         label="Calculated line marker",
                         data_type=str,
                         options=settings.PATTERN_MARKERS,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="display_exp_marker",
                         label="Experimental line marker",
                         data_type=str,
                         options=settings.PATTERN_MARKERS,
                         **PropIntel.ST_WID),
         PropIntel(name="display_plot_offset",
                   label="Pattern offset",
                   data_type=float,
                   widget_type="float_entry",
                   **PropIntel.ST_WID),
         PropIntel(name="display_group_by",
                   label="Group patterns by",
                   data_type=int,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="display_label_pos",
                   label="Default label position",
                   data_type=float,
                   widget_type="float_entry",
                   **PropIntel.ST_WID),
         OptionPropIntel(name="axes_xlimit",
                         label="X limit",
                         data_type=int,
                         options=settings.AXES_XLIMITS,
                         **PropIntel.ST_WID),
         PropIntel(name="axes_xmin",
                   label="min. [°2T]",
                   data_type=float,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="axes_xmax",
                   label="max. [°2T]",
                   data_type=float,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="axes_xstretch",
                   label="Stretch X-axis to fit window",
                   data_type=bool,
                   **PropIntel.ST_WID),
         PropIntel(name="axes_dspacing",
                   label="Show d-spacing in x-axis",
                   data_type=bool,
                   **PropIntel.ST_WID),
         OptionPropIntel(name="axes_ynormalize",
                         label="Y scaling",
                         data_type=int,
                         options=settings.AXES_YNORMALIZERS,
                         **PropIntel.ST_WID),
         OptionPropIntel(name="axes_ylimit",
                         label="Y limit",
                         data_type=int,
                         options=settings.AXES_YLIMITS,
                         **PropIntel.ST_WID),
         PropIntel(name="axes_ymin",
                   label="min. [counts]",
                   data_type=float,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="axes_ymax",
                   label="max. [counts]",
                   data_type=float,
                   widget_type="spin",
                   **PropIntel.ST_WID),
         PropIntel(name="axes_yvisible",
                   label="Y-axis visible",
                   data_type=bool,
                   **PropIntel.ST_WID),
         PropIntel(name="specimens",
                   label="Specimens",
                   data_type=object,
                   widget_type="object_list_view",
                   class_type=Specimen,
                   **PropIntel.ST_WID),
         PropIntel(name="phases",
                   data_type=object,
                   class_type=Phase,
                   **PropIntel.ST),
         PropIntel(name="mixtures",
                   data_type=object,
                   class_type=Mixture,
                   **PropIntel.ST),
         PropIntel(name="atom_types",
                   data_type=object,
                   class_type=AtomType,
                   **PropIntel.ST),
         PropIntel(name="needs_saving", data_type=bool),
     ]
     store_id = "Project"
     file_filters = [
         ("PyXRD Project files",
          get_case_insensitive_glob("*.pyxrd", "*.zpd")),
     ]
     import_filters = [
         ("Sybilla XML files", get_case_insensitive_glob("*.xml")),
     ]