Changeset 1539
- Timestamp:
- 10/12/08 12:09:58 (2 months ago)
- Files:
-
- trunk/openopt/scikits/openopt/Kernel/Function.py (modified) (1 diff)
- trunk/openopt/scikits/openopt/examples/oofun/oovar.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/openopt/scikits/openopt/Kernel/Function.py
r1530 r1539 223 223 for i, inp in enumerate(self.input): 224 224 if isinstance(inp, oovar): 225 r[agregate_counter, inp.dep] = derivativeSelf[agregate_counter , inp.dep]225 r[agregate_counter, inp.dep] = derivativeSelf[agregate_counter]#, inp.dep] 226 226 agregate_counter += inp.size 227 227 else: trunk/openopt/scikits/openopt/examples/oofun/oovar.py
r1524 r1539 25 25 # also, Python tuple or numpy ndarray or matrix can be used instead of Python list 26 26 27 f0 = oofun(lambda z: z[0]**2 + z[0] + 2*z[1] , input = v0)27 f0 = oofun(lambda z: z[0]**2 + z[0] + 2*z[1]**2 , input = v0) 28 28 """However, indexing (like above) is not recommended. 29 29 Try to create separate oovars instead: … … 36 36 f3 = oofun(lambda y, z, t: y.sum() ** 2 + 2*z.sum() + 4 * t, input = [f1, f2, f0]) 37 37 38 p = NLP(f3 )38 p = NLP(f3, gtol=1e-7) 39 39 r = p.solve('ralg') 40 #r = p.solve('ipopt') 40 41 41 print 'solution:', r.xf 42 42 print 'optim value:', r.ff 43 43 """ 44 solution: {'v0': array([ - 0.50831887, -11.50831887]), 'v1': array([ 0.09999771, 0.199998 ]), 'v2': array([-1.50014798, 0.99994868])}45 optim value: -84.213691152744 solution: {'v0': array([ -5.00002645e-01, 3.52068631e-06]), 'v1': array([ 0.10000075, 0.20000047]), 'v2': array([-1.50000237, 0.9999997 ])} 45 optim value: 7.85208138965 46 46 """ 47 47
