I am pretty certain (although the documentation is not very clear on this) that NonlinearModelFit does a least-squares fit, i.e.,
mymodel=NonlinearModelFit[{parameter and response data}, myform, variables]
will look for the parameters that minimize the sum of (observed - predicted)^2. I think that when weights are used:
mymodel=NonlinearModelFit[{parameter and response data}, myform, variables, Weights -> somelist]
The NonlinearModelFit will minimize the sum of weight*(observed - predicted)^2. However, when I try to modify the evaluation in different ways to get slightly different fits, using weights always gives me something very unreasonable. Perhaps I am mistaken about how weights are used, or even about how NonlinearModelFit works in the first place.
Thanks in advance,
O.L.