Modify Element - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim





modify an element or isotope definition


Calling Sequence




Calling Sequence

ModifyElement( descriptor, opts )




name, symbol, or atomic number of an element, or isotope syntax of an isotope. For a description of the isotope syntax, see Element



equation(s) of the form option=value, where option is one of 'name', 'names', 'symbol', or property_name; specify the element or isotope definition



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 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 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 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 uncertainty.


The property units is assigned one (1) if it is a new property, or the pre-existing units value if it is a pre-existing property. The property 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 uncer,uncertainty_opt, 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 uncer,relative, 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 uncer,uld, uncer is the uncertainty in "units in the least digit" in the property's value.  The quantity uncerSFloatExponentvalue_obj 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 units is assigned one (1).


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






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


1,symbol=H,name=hydrogen,names=hydrogen,ionizationenergy=value=13.5984,uncertainty=undefined,units=eV,boilingpoint=value=20.28,uncertainty=undefined,units=K,electronaffinity=value=proc...end proc,uncertainty=undefined,units=1,meltingpoint=value=13.81,uncertainty=undefined,units=K,electronegativity=value=2.1,uncertainty=undefined,units=1,atomicweight=value=1.00794,uncertainty=0.00007,units=amu,density=value=proc...end proc,uncertainty=undefined,units=kgL




1,symbol=H,name=hydrogen,names=hydrogen,ionizationenergy=value=13.5984,uncertainty=0.00005,units=eV,boilingpoint=value=20.28,uncertainty=undefined,units=K,electronaffinity=value=proc...end proc,uncertainty=undefined,units=1,meltingpoint=value=13.81,uncertainty=undefined,units=K,electronegativity=value=2.1,uncertainty=undefined,units=1,atomicweight=value=1.00794,uncertainty=0.00007,units=amu,density=value=proc...end proc,uncertainty=undefined,units=kgL


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







106,symbol=Sg,name=seaborgium,names=seaborgium,electronegativity=value=1.3,uncertainty=undefined,units=1,atomicweight=value=proc...end proc,uncertainty=undefined,units=1


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



6,boilingpoint=value=proc...end proc,uncertainty=undefined,units=K



See Also

Create Maple Initialization File

Details of Commands for Elements and Isotopes

Initial Elements of the Periodic Table

Initial Properties for Elements and Isotopes