def test_problem1(): X1 = ad(ia(-1100., 1400.), name='X1', N=2, dim=0) X2 = ad(ia(-1400., 1200.), name='X2', N=2, dim=1) #X1 = ad(ia(-2.,4.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-4.,2.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-11.,14.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-14.,12.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-.11,.14), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-.14,.12), name = 'X2', N=2, dim = 1) #C = ad( ia(-20.,20.), name = 'h0', N=2, dim = -1) X = [[X1], [X2]] """ func = thcf tol = 1.e-10 """ sp = UnconstrainedPaver(thcf, X, tol=1.e-10) # #sp.compute_subpaving() """ X1 = ad(ia(-4.1,4.), name = 'X1', N=2, dim = 0) X2 = ad(ia(-4.,4.), name = 'X2', N=2, dim = 1) X = [[X1],[X2]] func = thcf tol = 1.e-20 Bspline_style = True Xn, nit, y, converged = IA.compute_interval_newton_basic(thcf, X,itmax=100, tol = 1.e-25) #""" return X, sp
def test_problem1(): #X1 = ad(ia(-1100.,1400.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-1400.,1200.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-2.,4.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-2.,4.), name = 'X2', N=2, dim = 1) X1 = ad(ia(-2., 4.), name='X1', N=2, dim=0) X2 = ad(ia(-4., 2.), name='X2', N=2, dim=1) #X1 = ad(ia(-4.,4.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-4.,4.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(2.9,3.1), name = 'X1', N=2, dim = 0) #X2 = ad(ia(0.4,.6), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-11.,14.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-14.,12.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-.11,.14), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-.14,.12), name = 'X2', N=2, dim = 1) #C = ad( ia(-20.,20.), name = 'h0', N=2, dim = -1) X = [[X1], [X2]] """ func = thcf tol = 1.e-10 """ #1.0 sp = UnconstrainedPaver(thcf, X, tol=1.e-6) #16. sp = UnconstrainedPaver(schwefel1, X, tol=1.e-6) #17. #sp = UnconstrainedPaver(schwefel2,X,tol = 1.e-6) #18. sp = UnconstrainedPaver(schwefel3, X, tol=1.e-3) #20. sp = UnconstrainedPaver(booth, X, tol=1.e-3) #28 #sp = UnconstrainedPaver(schwefel32,X,tol = 1.e-3) #29 sp = UnconstrainedPaver(rosenbrock, X, tol=1.e-2) # #sp.compute_subpaving() """ X1 = ad(ia(-4.1,4.), name = 'X1', N=2, dim = 0) X2 = ad(ia(-4.,4.), name = 'X2', N=2, dim = 1) X = [[X1],[X2]] func = thcf tol = 1.e-6 Bspline_style = True Xn, nit, y, converged = IA.compute_interval_newton_basic(thcf, X,itmax=100, tol = 1.e-25) #""" return X, sp
def my_test1(): x = ad( ia(-10.,10.), N=2, dim = 0) y = ad( ia(-10.,10.), N=2, dim = 1) X = [[x],[y]] sp1 = UnconstrainedPaver(func0, X) self = sp1 #sp1.compute_subpaving() #sp1.plot_subpaving() #print self.ntboxes return X,sp1
def test_problem1(): X1 = ad(ia(-12.,10.), name = 'X1', N=2, dim = 0) X2 = ad(ia(-11.,10.3), name = 'X2', N=2, dim = 1) C = ad( ia(-20.,20.), name = 'h0', N=2, dim = -1) X = [[X1],[X2]] """ func = thcf tol = 1.e-10 """ sp = CurvePaver(thcf,X,C,tol = 0.5) #Xn, nit = IntervalAnalysis.compute_interval_newton_basic(thcf,X,itmax=100) sp.compute_subpaving() return
def makeGradient(N, i): """function to create a gradient of interval components """ ia_id = ia(1., 1.) ia_null = ia(0., 0.) if i >= 0: Im = np.identity((N), float) #np.matrix(np.identity((N),float)) elif i == -1: #interval contraint -> gradient is null Im = np.zeros((N, N), float) GX = [] for j in range(N): if j == i: GX.append(ia_id * Im[i, j]) else: GX.append(ia_null * Im[i, j]) GX = np.matrix(GX) return GX
def makeHessian(N): """function to create a Hessian of interval components """ ia_null = ia(0., 0.) m1 = np.zeros((N, N), float) #np.matrix(np.zeros((N,N),float)) HX = [] for i in range(N): HX.append([]) for j in range(N): HX[i].append(ia_null * m1[i, j]) HX = np.matrix(HX) #np.asarray(HX)# return HX
print 'at min location:' print el print '\n' """ """ self.compute_subpaving() for i, el in enumerate(self.boundary): F = self.f(el) F.name = 'Minimum {}'.format(i) F.value print 'at min location:' print el print '\n' """ X1 = ad(ia(-2.,4.), name = 'X1', N=2, dim = 0) X2 = ad(ia(-2.,4.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-11.,14.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-14.,12.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-.11,.14), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-.14,.12), name = 'X2', N=2, dim = 1) #C = ad( ia(-20.,20.), name = 'h0', N=2, dim = -1) func = thcf #func = schwefel1 #func = schwefel2 tol = 1.e-10 Bspline_style = True #V = [[X1],[X2]] X = [[X1],[X2]] if Bspline_style:
return if __name__ == '__main__': a = interval([1.,2.]) b = interval([1.0, 4.0]) c = interval([0.0, 4.0]) d = interval([-4.0, -1.0]) e = interval([-4.0, 4.0]) g = interval([-1.,4.]) clist = [a,b,c,d,e] a1 = ia(1.,2.) a2 = ia(1.,4.) a3 = ia(0.,4.) a4 = ia(-4.,-1.) a5 = ia(-4.,4.) mylist = [a1,a2,a3,a4,a5] TC = IATest(clist, mylist) TC.test_add() TC.test_subtract() TC.test_multiply() TC.test_division() TC.test_pow() TC.test_sqrt() TC.test_arctan()
#s = self.compute_midship_coefficient() #del(state.values[c1]) #del(state.values[c2]) dkeys = [] for key in state.values: if not isinstance(key, lp.Variable): dkeys.append(key) for key in dkeys: del (state.values[key]) return state if __name__ == '__main__': a = ia(0., 100.) b = ia(50., 150.) c = a & b self = Hull() #goal = lp.Goal.eq(self.lwl, ia(2000.,300000.)) #self.state = goal(self.state)[0] self.vol = ia(2000., 300000.) self.lwl = ia(120., 120.) self.bwl = ia(20., 20.) #self.Cb = ia(.5,.7) self.draft = ia(20., 20.) self.Cwp = ia(.2, .4) self.Cmidshp = ia(.7, .99) self.dsmax = ia(25., 35.) print self.state
if __name__ == '__main__': X, sp = test_problem1() x1 = X[0][0] x2 = X[1][0] self = sp #""" self.compute_subpaving() self.plot_subpaving() for i, el in enumerate(self.boundary): F = self.f(el()) F.name = 'Minimum {}'.format(i) F.print_components() print 'at min location:' print el() X1 = ad(ia(-4., 2.), name='X1', N=2, dim=0) X2 = ad(ia(-2., 4.), name='X2', N=2, dim=1) #""" """ #X1 = ad(ia(-11.,14.), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-14.,12.), name = 'X2', N=2, dim = 1) #X1 = ad(ia(-.11,.14), name = 'X1', N=2, dim = 0) #X2 = ad(ia(-.14,.12), name = 'X2', N=2, dim = 1) #C = ad( ia(-20.,20.), name = 'h0', N=2, dim = -1) func = thcf tol = 1.e-10 Bspline_style = True V = [[X1],[X2]] #"""
if __name__ == "__main__": # TLM B-Spline Curve class import curve as spline from initialValues import InitializeControlPoints, InitializeControlVertices import copy from ADILS import IntervalLagrangeSpline, Lagrangian from FormParameter import FormParameterDict from initialValues import interval_bounds, lagrangian_bounds option = 'ini_test' test = None test = 'SAC' # this one makes the run plot with free stern tube do_all = False voldisp = ia(34196.3123868, 34196.3174777).getpoint(.5) Amsh = ia(440.441841483, 440.447841483).getpoint(.5) lwl = ia(113.978485473, 113.984485473).getpoint(.5) # lfsac = ia(10.5364794686, 10.5424794686).getpoint(.5) LCG = ia(56.1860734432, 56.1920734432).getpoint(.5) # lfwl = ia(14.0303648233, 14.0363648233).getpoint(.5) lfcp = ia(11.3864366677, 11.3924366677).getpoint(.5) # draft = ia(18.4490277827, 18.4550277827).getpoint(.5) beam = ia(27.092071177, 27.098071177).getpoint(.5) BulbVolume = ia(7.39104381671, 7.39110381671).getpoint(.5) A_mid = ia(20.4224589012, 20.4225189012).getpoint(.5) A_lateral = ia(24.2218639047, 24.2219239047).getpoint(.5)
def test_problem2(): X1 = ad(ia(-2., 4.), name='X1', N=2, dim=0) X2 = ad(ia(-4., 2.), name='X2', N=2, dim=1) X = [[X1], [X2]] sp = UnconstrainedPaver(thcf, X, tol=1.e-6) return
print '' print el[0] print el[1] return if __name__ == '__main__': def func1(X): x = X[0] y = X[1] return (x[0]**2 + y[0]**2) # * x[0].exp() #return (x[0]**2 + x[1]**2 + y[0]**2 + y[1]**2) x = ad(ia(-10., 10.), N=2, dim=0) y = ad(ia(-10., 10.), N=2, dim=1) X = [[x], [y]] x = ad(ia(0.1, 0.3), name='x', N=2, dim=0) y = ad(ia(0.1, 0.3), name='x', N=2, dim=1) X1 = [[x], [y]] #C = ad(ia(.9,1.1), N=2, dim = -1) #C = ad(ia(4.7,5.3), N=2, dim = -1) C = ad(ia(4.0, 5.9), N=2, dim=-1) #C = ia(ia(0.,2.) sp1 = SimplePaver(func1, X, C) self = sp1 sp1.compute_subpaving() sp1.plot_subpaving()
lwl: None, bwl: None, Awp: None, Amsh: None, Cwp: None, Cmidshp: None, Cp: None }) #s = lp.Goal.eq(lpp, ia(100.,120.) )(s)[0] #s = lp.Goal.eq(lpp, 120.)(s)[0] #s = lp.Goal.eq(br, ia(30.,50.) )(s)[0]#(s[0])#(s)# #s = lp.Goal.eq(br, ia(1.,218.75) )(s)[0] #s = lp.Goal.eq(br, 30.)(s)[0] s = lp.Goal.eq(vol, ia(2000., 300000.))(s)[0] s = lp.Goal.eq(Cb, ia(.5, .7))(s)[0] s = lp.Goal.eq(lwl, ia(120., 120.))(s)[0] s = lp.Goal.eq(bwl, ia(20., 20.))(s)[0] s = lp.Goal.eq(draft, ia(20., 20.))(s)[0] s = lp.Goal.eq(Cwp, ia(.2, .4))(s)[0] #s = Block_Coefficient_long(lpp,br,draft,vol,Cb,s) # s = lp.Goal.eq(Cmidshp, ia(.7, .99))(s)[0] s = lp.Goal.eq(dsmax, ia(25., 35.))(s)[0] #s = lp.Goal.eq(Cp, ia(.01,.99) )(s)[0]