Criteri-R
Job
The requirements of a design are contained in a unit called 'job', which is in the format of JSON file. The storage path of these files in a device can be found on the App Info page in Criteri-R.
Since it is always located in an external storage media, user should be aware not to change the media when a job is opened.
Component
In a job, a user defines and configures the components that are needed.
Name
Every component must have a name for use in mathematical expressions. Names must start with alphabets or underscore, and can only be composed of alphanumeric characters and underscore. Consecutive underscore is not allowed.
Series
The selected number series (E6, E12, E24, E48, E96, E192 and 1-2-5) govern the possible values a component may have per decade involved.
Decade ranges
Components with names starting with the following characters are automatically classified into different decade ranges:
L or l: -10 to -1 (0.1n to 100m)
C or c: -12 to -2 (1p to 10m)
R or r: -1 to 7 (100m to 10M)
others: -12 to 7 (1p to 10M)
First and Last Values
The actual possible desired values represented by a component are defined by the first value and last value selections. Confining them to a narrower range can speed up solving processes.
Tolerance
Tolerance selection: ±0%(, ±0.1%, ±0.2%, ±0.5%, ±1%, ±2%, ±5%, ±10% if extreme values analysis is enabled)
Function
Users may define their own handy functions.
A function may return real or complex value. Functions may invoke other functions, provided they do not become self-referencing.
Name
A function name must start with alphabets or underscore, and can consists of alphanumeric characters and the underscore only. Consecutive underscore is not allowed. Functions are invoked in a mathematical expression by their names, optionally with parameters.
Function names must be unique to all other function names as well as component names.
Parameter
Parameters: x1 only (expands to x99 by in-app purchase).
Expression
Users may input mathematical expressions in functions and criterions.
In expressions, component names and function names are case-sensitive. All angles are in radians unless otherwise stated.
Built-in Constants
pi = π
mu0 = µ₀ (free-space permeability)
eps0 = ε₀ (free-space permittivity)
Built-in Functions
Accept and return real
sin, cos, tan, asin, acos, atan, abs, sqrt, ln, log, sq, exp, pow
atan2(y,x) = atan(y/x)
Pr(r1, ..) = parallel resistance of r1 ...
deg(x) = convert radian x to degree; rad(x) = convert degree x to radian
dB(x) = 10 * log10(x); dB20(x) = 20 * log10(x)
G10(x) = pow(10, x/10); G20(x) = pow(10, x/20)
VT(x) = thermal voltage at x Kelvin
Accept real and return complex
J(a,b) = a + j * b
Jp(r,θ) = r cos(θ) + j * r sin(θ)
Accept complex and return real
Jre(z) = real part of z; Jim(z) = imaginary part of z
Jabs(z) = absolute value/modulus/magnitude of z
Jarg(z) = argument/phase/angle of z in radians in the range -π to π
Accept and return complex
Jsin, Jcos, Jtan, Jasin, Jacos, Jatan, Jsqrt, Jln, Jsq, Jexp, Jpow
Jrcp(z) = 1/z
JPr(z1, ..) = parallel impedance of z1 ...
Criterion
Criteria form the logic of accepting component value combinations as solutions. Each criterion produces two inequalities, namely the lower and upper ones, that mark the range of acceptance for the target value (quantity). An inequality may be disabled when the comparer on that side is "None". Only if all enabled inequalities of all criteria are satisfied is that component value combination be accepted as a solution.
Name
Criterion names may contain any characters except consecutive underscore.
Quantity, Lower Bound & Upper Bound
These are the mathematical expression fields representing the physical quantity to calculate, and the lower and upper allowed values. These expressions must return real numbers.
Lower & Upper Comparer
A choice of "<" (less than) or "<=" (less than or equal to) enables comparison. Choosing "None" disables the inequality on that (lower or upper) side.
Draft Item
An item (component/function/criterion) with invalid syntax will be moved to the draft list. A draft item will not be involved in any solving process until it is corrected.
Solution
A solution records the component values that comply to all criteria constraints, as well as the corresponding quantity values. There can be up to 1000 solutions for each job.
If extreme values analysis is enabled, every quantity value will be recorded with the minimum and maximum values found.
Extreme Values Analysis
If any component is defined with a non-zero tolerance, extreme values analysis (by in-app purchase) is enabled automatically during solving processes.
When enabled, every component value combination further expands into combinations of the toleranced (extreme) values. For example, 4 components with non-zero tolerances generate 16 possible combinations. Only if all these secondary combinations comply to all criteria, will that component value combination be deemed to be a solution.
Caution
Criteri-R does NOT guarantee the minimum and maximum values of the quantity of any criterion always happen at these extreme value combinations. There is always possibility that a local minima or maxima occurs in the middle of the two extremes of a toleranced component value, though it is rarely the case. Nevertheless, the analysis helps to sort out the potential solutions for further investigation if necessary.
Upgrade
Free
Function parameters: 1
Max component value combination count: 10,000,000
Component tolerances: ±0% (extreme values analysis not supported)
Contains ads
In-app Purchase
Function parameters: 99
Max component value combination count: unlimited
Component tolerances: ±0%, ±0.1%, ±0.2%, ±0.5%, ±1%, ±2%, ±5%, ±10%,
Extreme values analysis is supported
Remove all advertisements