# 31.1 Linear Constraints Syntax

Table below lists the commonly used notations in writing linear constraints in non-linear curve fitting and provides few examples:

Applications Notations Examples

Simple Linear

=, <, <=, >, >= and +, -, *, /
Five relational operators are supported only for simple linear constraints. Nonlinear combination such as a * b >3; 1/b > c + 3; are not supported.

a > b;
a + 2 * b >= c * 2 − d;
a < b < c;
a / 3 < 9;

Initial Values

(i)
refers to the initial value of a parameter

xc__2(i)-xc_2 <=0.3;
xc__2-xc__2(i) <= 0.3;
limit the parameter value of xc__2 within the range of +/- 0.3 of its initial value xc__2(i).

Parameter Family (a)

represents all the parameters of a family

A(a) < 1;
All amplitudes (A) to be less than 1.

All Parameters Except One (e)

indicates all parameters of a family except the one preceding (e).

A__3 >= 2*A__3(e);
ensures A__3 is at least twice as large as all the other amplitudes.

A Serial of Parameter Family (n)

represents a serial of parameter family.

w(2*n-1) < w(2*n), n=1..5; equivalent to:
w__1 < w__2; w__3 < w__4; w__5 < w__6; w__7 < w__8; w__9 < w__10;

Combine Special Notations (ie), (ia)

(ie) refers to initial values of all parameters of a family except the one preceding (e).
(ia) refers to initial values of all parameters of a family

xc(ia) - xc(a) <= 0.2;
xc(a) - xc(ia) <= 0.2;
Limits all peak centers within +/- 0.2 of their corresponding initial values.

Replica Fitting

parameter name + __n
where n denotes the (n-1)th replica. Note that two underscores are used.

Assume that y0 is a parameter and there is a replica. Then the available notations would be:
y0 refers to first peak
y0__2 refers to first replica

Global Fitting

parameter name+_n
where n denotes the nth dataset.

Assume that a is a parameter and there are 2 datasets. Then the available notations would be:
a refers to fitting parameter a for first dataset
a_2 refers to fitting parameter a for second dataset