Hi,
Here's a typical 3dNLfim command that we normally use:
3dNLfim \
-input input+tlrc.HEAD \
-ignore 0 \
-noise Constant \
-signal GammaVar \
-nconstr 0 -1000.0 1000.0 \
-sconstr 0 0 2 \
-sconstr 1 -1000.0 1000.0 \
-sconstr 2 8 9 \
-sconstr 3 0.15 0.45 \
-nrand 1000 \
-nbest 10 \
-rmsmin 1.0 \
-fdisp 1000.0 \
-bucket 0 output.bucket
Cohen's equation is y=k * (t-t0)^r * exp(-(t-t0)/b)
'-sconstr 0' represents the t0 variable
'-sconstr 1' represents the k variable
'-sconstr 2' represents the r variable
'-sconstr 3' represents the b variable
The command line above is for a dataset with a TR=2s. This means that '-sconstr 0 0 2' ranges from 0s to 4s. These values need to be changed if the TR is say 1sec ('-scontr 0 0 4'). Also the b variable is dependent on TR so if your TR is 1sec, the values need to be doubled: '-sconstr 3 0.3 0.9'. Apart from that there is not much else to worry about.
After trying out a few different values, we chose nrand to be 1000 and nbest to be 10 because it seemed to give good results. This might be an overkill and it takes a while to run but it's better to be safe.
Hope this helps,
Kevin