Modify Element - Maple Help

ScientificConstants

 ModifyElement
 modify an element or isotope definition

 Calling Sequence ModifyElement( descriptor, opts )

Parameters

 descriptor - name, symbol, or atomic number of an element, or isotope syntax of an isotope. For a description of the isotope syntax, see Element opts - equation(s) of the form option=value, where option is one of 'name', 'names', 'symbol', or property_name; specify the element or isotope definition

Description

 • The ModifyElement( descriptor, opts ) command modifies the name or symbol of an element, or defines or  modifies values of properties of an element or isotope in the ScientificConstants package for the current session.
 • To modify an element or isotope in all future Maple sessions, add the ModifyElement command to your Maple initialization file. For more information, see Create Maple Initialization File.
 • The opts argument can contain one or more of the following equations that set the element or isotope definition.
 'name' = symbol
 This option redefines the element name. It cannot be used when modifying an isotope. If $'\mathrm{name}'$ is modified, the descriptor must be the symbol or atomic number of the element.
 'names' = symbol or {symbol, symbol, ...}
 This option is used to redefine the multiple names of an element. It cannot be used when modifying an isotope. If $'\mathrm{names}'$ is modified, the descriptor must be the symbol or atomic number of the element.
 Any element name specified by the 'name' option need not be specified by the 'names'. The element name is automatically included in the 'names' set.
 'symbol' = symbol
 This option redefines the element symbol. It cannot be used when modifying an isotope. If $'\mathrm{symbol}'$ is modified, the descriptor must be the atomic number of the element.
 property_name = numeric, expression that evaluates to a numeric, procedure, or list of the form ['value'=value_obj, 'uncertainty'=uncertainty_obj, 'units'=units_obj]
 This option specifies a new property or redefines a pre-existing property of an element or isotope. The property_name can be any accepted property name. For a list of element and isotope properties, see Initial Properties for Elements and Isotopes. To specify multiple properties, use multiple property_name equations. To define the value of a property not accepted by the package, the property must first be added by using the AddProperty function.
 property_name = numeric, expression that evaluates to a numeric, or procedure
 If only a numeric or procedure is specified, it is assigned to the value of property property_name.
 This form can be used only if it defines a new property for the element or isotope, or if the pre-existing property had an undefined $'\mathrm{uncertainty}'$.
 The property $'\mathrm{units}'$ is assigned one (1) if it is a new property, or the pre-existing $'\mathrm{units}'$ value if it is a pre-existing property. The property $'\mathrm{uncertainty}'$ is assigned undefined.
 property_name = ['value' = value_obj, 'uncertainty' = uncertainty_obj, 'units' = units_obj]
 'value' = value_obj
 The value_obj option defines the property value. This option is required. It must be of type numeric or type procedure.
 'uncertainty' = uncertainty_obj
 The uncertainty_obj option defines or redefines the precision to which the property value is known.
 If this property is new for the element, it is optional. If not specified, 'uncertainty' is assigned the value undefined.
 If this property is pre-existing for the element and the uncertainty is not undefined, this equation is required.
 It must be of type numeric, type procedure, or be a list of the form $\left[\mathrm{uncer},\mathrm{uncertainty_opt}\right]$, where uncertainty_opt is 'relative' or 'uld'.
 If no uncertainty option uncertainty_opt is included, the numeric value represents the absolute uncertainty of the property. That is, the value is measured in units determined by the 'units' option.
 If uncertainty_obj is of the form $\left[\mathrm{uncer},'\mathrm{relative}'\right]$, uncer is the relative uncertainty in the property's value.  The quantity uncer*value_obj is the absolute uncertainty of the property.
 If uncertainty_obj is of the form $\left[\mathrm{uncer},'\mathrm{uld}'\right]$, uncer is the uncertainty in "units in the least digit" in the property's value.  The quantity $\mathrm{uncer}\mathrm{SFloatExponent}\left(\mathrm{value_obj}\right)$ is the absolute uncertainty of the property.  This form of uncertainty cannot be used with a non-float value_obj.
 procedure objects for value or uncertainty
 An Element object can refer to an element with a property that has its value or uncertainty defined by a procedure.  When such an object is evaluated (by evalf, GetValue, or GetError), the value or uncertainty is obtained by evaluating the stored procedure. Any error is rethrown.  The result is then passed to the required units conversion.
 Furthermore, any parameters to the property given in the Element object are passed as arguments to the procedure when it is evaluated.  In such a case, the property is said to be parameterized.
 See Element for more information regarding the construction and evaluation of Element objects that refer to elements with properties defined by procedures, or that have parameterized properties.
 'units' = units_obj
 The units_obj option defines the units in which the property value, and possibly uncertainty, are measured. The units_obj option can be an expression that Units[Unit] interprets as a unit or a Unit() standard form. For more information, see Units.
 If this property is new for the element, the equation is optional. If not specified, the property $'\mathrm{units}'$ is assigned one (1).

Examples

Allow gold to be specified by its former name, aurum.

 > $\mathrm{with}\left(\mathrm{ScientificConstants}\right):$
 > $\mathrm{ModifyElement}\left(\mathrm{Au},\mathrm{names}=\mathrm{aurum}\right)$
 > $\mathrm{GetElement}\left(\mathrm{aurum}\right)$
 ${79}{,}{\mathrm{symbol}}{=}{\mathrm{Au}}{,}{\mathrm{name}}{=}{\mathrm{gold}}{,}{\mathrm{names}}{=}\left\{{\mathrm{aurum}}{,}{\mathrm{gold}}\right\}{,}{\mathrm{electronaffinity}}{=}\left[{\mathrm{value}}{=}{2.30863}{,}{\mathrm{uncertainty}}{=}{0.00003}{,}{\mathrm{units}}{=}{\mathrm{eV}}\right]{,}{\mathrm{electronegativity}}{=}\left[{\mathrm{value}}{=}{2.54}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{density}}{=}\left[{\mathrm{value}}{=}{19.3}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}\frac{{g}}{{{\mathrm{cm}}}^{{3}}}\right]{,}{\mathrm{meltingpoint}}{=}\left[{\mathrm{value}}{=}{1337.33}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{boilingpoint}}{=}\left[{\mathrm{value}}{=}{3129.}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{atomicweight}}{=}\left[{\mathrm{value}}{=}{196.96655}{,}{\mathrm{uncertainty}}{=}{0.00002}{,}{\mathrm{units}}{=}{\mathrm{amu}}\right]{,}{\mathrm{ionizationenergy}}{=}\left[{\mathrm{value}}{=}{9.2255}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{\mathrm{eV}}\right]$ (1)

Change the value, uncertainty, and units of the ionization energy of hydrogen.

 > $\mathrm{GetElement}\left(H\right)$
 ${1}{,}{\mathrm{symbol}}{=}{H}{,}{\mathrm{name}}{=}{\mathrm{hydrogen}}{,}{\mathrm{names}}{=}\left\{{\mathrm{hydrogen}}\right\}{,}{\mathrm{electronaffinity}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{electronegativity}}{=}\left[{\mathrm{value}}{=}{2.1}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{density}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}\frac{{\mathrm{kg}}}{{L}}\right]{,}{\mathrm{meltingpoint}}{=}\left[{\mathrm{value}}{=}{13.81}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{boilingpoint}}{=}\left[{\mathrm{value}}{=}{20.28}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{atomicweight}}{=}\left[{\mathrm{value}}{=}{1.00794}{,}{\mathrm{uncertainty}}{=}{0.00007}{,}{\mathrm{units}}{=}{\mathrm{amu}}\right]{,}{\mathrm{ionizationenergy}}{=}\left[{\mathrm{value}}{=}{13.5984}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{\mathrm{eV}}\right]$ (2)
 > $\mathrm{ModifyElement}\left(H,\mathrm{ionizationenergy}=\left[\mathrm{value}=13.5984,\mathrm{uncertainty}=\left[0.5,\mathrm{uld}\right],\mathrm{units}=\mathrm{eV}\right]\right)$
 > $\mathrm{GetElement}\left(H\right)$
 ${1}{,}{\mathrm{symbol}}{=}{H}{,}{\mathrm{name}}{=}{\mathrm{hydrogen}}{,}{\mathrm{names}}{=}\left\{{\mathrm{hydrogen}}\right\}{,}{\mathrm{electronaffinity}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{electronegativity}}{=}\left[{\mathrm{value}}{=}{2.1}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{density}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}\frac{{\mathrm{kg}}}{{L}}\right]{,}{\mathrm{meltingpoint}}{=}\left[{\mathrm{value}}{=}{13.81}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{boilingpoint}}{=}\left[{\mathrm{value}}{=}{20.28}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]{,}{\mathrm{atomicweight}}{=}\left[{\mathrm{value}}{=}{1.00794}{,}{\mathrm{uncertainty}}{=}{0.00007}{,}{\mathrm{units}}{=}{\mathrm{amu}}\right]{,}{\mathrm{ionizationenergy}}{=}\left[{\mathrm{value}}{=}{13.5984}{,}{\mathrm{uncertainty}}{=}{0.00005}{,}{\mathrm{units}}{=}{\mathrm{eV}}\right]$ (3)

Add a halflife value and units for Seaborgium[263] and an electronegativity for Seaborgium.

 > $\mathrm{ModifyElement}\left(\mathrm{Sg}\left[263\right],\mathrm{halflife}=\left[\mathrm{value}=0.9,\mathrm{units}=s\right]\right)$
 > $\mathrm{GetElement}\left(\mathrm{Sg}\left[263\right]\right)$
 ${{\mathrm{Sg}}}_{{263}}{,}{\mathrm{bindingenergy}}{=}\left[{\mathrm{value}}{=}{1.929620}{×}{{10}}^{{6}}{,}{\mathrm{uncertainty}}{=}{124.}{,}{\mathrm{units}}{=}{\mathrm{keV}}\right]{,}{\mathrm{massexcess}}{=}\left[{\mathrm{value}}{=}{110208.}{,}{\mathrm{uncertainty}}{=}{124.}{,}{\mathrm{units}}{=}{\mathrm{keV}}\right]{,}{\mathrm{atomicmass}}{=}\left[{\mathrm{value}}{=}{2.63118313}{×}{{10}}^{{8}}{,}{\mathrm{uncertainty}}{=}{133.}{,}{\mathrm{units}}{=}{\mathrm{μamu}}\right]{,}{\mathrm{halflife}}{=}\left[{\mathrm{value}}{=}{0.9}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{s}\right]$ (4)
 > $\mathrm{ModifyElement}\left(\mathrm{Sg},\mathrm{electronegativity}=1.3\right)$
 > $\mathrm{GetElement}\left(\mathrm{Sg}\right)$
 ${106}{,}{\mathrm{symbol}}{=}{\mathrm{Sg}}{,}{\mathrm{name}}{=}{\mathrm{seaborgium}}{,}{\mathrm{names}}{=}\left\{{\mathrm{seaborgium}}\right\}{,}{\mathrm{electronegativity}}{=}\left[{\mathrm{value}}{=}{1.3}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]{,}{\mathrm{atomicweight}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{1}\right]$ (5)

Display the stored procedure for a property of a particular element.

 > $\mathrm{interface}\left(\mathrm{verboseproc}=2\right):$
 > $\mathrm{GetElement}\left(C,\mathrm{boilingpoint}\right)$
 ${6}{,}{\mathrm{boilingpoint}}{=}\left[{\mathrm{value}}{=}{\mathbf{proc}}\left({}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}{,}{\mathrm{uncertainty}}{=}{\mathrm{undefined}}{,}{\mathrm{units}}{=}{K}\right]$ (6)
 > $\mathrm{interface}\left(\mathrm{verboseproc}=1\right):$