-
Notifications
You must be signed in to change notification settings - Fork 0
/
1dNLfit.json
68 lines (68 loc) · 4.02 KB
/
1dNLfit.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
{
"command-line": "1dNLfit [EXPR] [INDVAR] [PARAM] [DEPDATA] [METH] [OPTIONS]",
"description": "tool description",
"inputs": [
{
"command-line-flag": "-expr",
"description": "The expression for the fit. It must contain one symbol from 'a' to 'z' which is marked as the independent variable by option '-indvar', and at least one more symbol which is a parameter to be estimated. ++ Expressions use the same syntax as 3dcalc, ccalc, and 1deval. ++ Note: expressions and symbols are not case sensitive.",
"id": "EXPR",
"name": "EXPR",
"optional": true,
"type": "String",
"value-key": "[EXPR]"
},
{
"command-line-flag": "-indvar",
"description": "Indicates which variable in '-expr' is the independent variable. All other symbols are parameters, which are either fixed (constants) or variables to be estimated. ++ Then, read the values of the independent variable from 1D file 'd' (only the first column will be used). ++ If the independent variable has a constant step size, you can input it via with 'd' replaced by a string like '1D: 100%0:2.1' which creates an array with 100 value, starting at 0, then adding 2.1 for each step: 0 2.1 4.2 6.3 8.4 ...",
"id": "INDVAR",
"name": "INDVAR",
"optional": true,
"type": "String",
"value-key": "[INDVAR]"
},
{
"command-line-flag": "-param",
"description": "Set fixed value or estimating range for a particular symbol. ++ For a fixed value, 'ppp' takes the form 'a=3.14', where the first letter is the symbol name, which must be followed by an '=', then followed by a constant expression. This expression can be symbolic, as in 'a=cbrt(3)'. ++ For a parameter to be estimated, 'ppp' takes the form of two constant expressions separated by a ':', as in 'q=-sqrt(2):sqrt(2)'. ++ All symbols in '-expr' must have a corresponding '-param' option, EXCEPT for the '-indvar' symbol (which will be set by its data file).",
"id": "PARAM",
"name": "PARAM",
"optional": true,
"type": "String",
"value-key": "[PARAM]"
},
{
"command-line-flag": "-depdata",
"description": "Read the values of the dependent variable (to be fitted to '-expr') from 1D file 'v'. ++ File 'v' must have the same number of rows as file 'd' from the '-indvar' option! ++ File 'v' can have more than one column; each will be fitted separately to the expression.",
"id": "DEPDATA",
"name": "DEPDATA",
"optional": true,
"type": "String",
"value-key": "[DEPDATA]"
},
{
"command-line-flag": "-meth",
"description": "Set the method for fitting: '1' for L1, '2' for L2. (The default method is L2, which is usually better.) Example: -------- Create a sin wave corrupted by logistic noise, to file ss.1D. Create a cos wave similarly, to file cc.1D. Put these files together into a 2 column file sc.1D. Fit both columns to a 3 parameter model and write the fits to file ff.1D. Plot the data and the fit together, for fun and profit(?). 1deval -expr 'sin(2*x)+lran(0.3)' -del 0.1 -num 100 > ss.1D 1deval -expr 'cos(2*x)+lran(0.3)' -del 0.1 -num 100 > cc.1D 1dcat ss.1D cc.1D > sc.1D ; \\rm ss.1D cc.1D 1dNLfit -depdata sc.1D -indvar x '1D: 100%0:0.1' -expr 'a*sin(b*x)+c*cos(b*x)' \\",
"id": "METH",
"name": "METH",
"optional": true,
"type": "String",
"value-key": "[METH]"
},
{
"description": "NA",
"id": "OPTIONS",
"name": "OPTIONS",
"optional": false,
"type": "String",
"value-key": "[OPTIONS]"
}
],
"name": "tool name",
"schema-version": "0.5",
"suggested-resources": {
"cpu-cores": 1,
"ram": 1,
"walltime-estimate": 60
},
"tags": {},
"tool-version": "v0.1.0"
}