Пример #1
0
 def testChebcoef(self):
     S = PiecewiseFunction(fun=lambda x: sin(4*(x-0.5)), breakPoints=[-1, 1]).toInterpolated()
     seg = S.segments[0]
     Xs, Ys = seg.f.Xs, seg.f.Ys
     print("Xs=", Xs)
     print("Ys=", Ys)
     print("Cs=", chebt2(Ys))
     print("Xs=", ichebt2(chebt2(Ys)))
     #figure()
     #S.plot(color="r")
     D = S.diff()
     #D.plot(color="k")
     #show()
     self.assertTrue(0 < 1)
Пример #2
0
 def testChebcoef(self):
     S = PiecewiseFunction(fun=lambda x: sin(4 * (x - 0.5)),
                           breakPoints=[-1, 1]).toInterpolated()
     seg = S.segments[0]
     Xs, Ys = seg.f.Xs, seg.f.Ys
     print("Xs=", Xs)
     print("Ys=", Ys)
     print("Cs=", chebt2(Ys))
     print("Xs=", ichebt2(chebt2(Ys)))
     #figure()
     #S.plot(color="r")
     D = S.diff()
     #D.plot(color="k")
     #show()
     self.assertTrue(0 < 1)
Пример #3
0
if __name__ == "__main__":
    from pylab import *
    from pacal import *
#    B= BetaDistr(1,1) * UniformDistr(0,3)
#    B =(UniformDistr(0,3)+UniformDistr(0,1)+UniformDistr(0,1)+UniformDistr(0,1)) * (UniformDistr(0,1)+UniformDistr(0,1)+UniformDistr(0,1))
#    B = BetaDistr(4,4) *  (UniformDistr(-1,1)+UniformDistr(-1,2))
#    B.summary(show_moments=True)
#    print B.get_piecewise_pdf()
    from pacal.segments import PiecewiseFunction
    B = PiecewiseFunction(fun=lambda x:sin(3*x), breakPoints=[-1,0,1])

    B = B.toInterpolated()
    print(B.segments[0].f.__class__)
    #B = B.trimInterpolators(abstol=1e-15)
    print(B.segments[0].f.Ys, B.segments[0].f.__class__)
    D = B.diff()
    D2 = D.diff()
    D3 = D2.diff()
    D4 = D3.diff()
    D5 = D4.diff()
    print(D.segments[0].f.Ys, D.segments[0].f.__class__)
    print(D2.segments[0].f.Ys)
    print(D.roots())
    figure()
    B.plot()
    D.plot()
    D2.plot()
    D3.plot()
    D4.plot()
    D5.plot()
    show()
Пример #4
0
if __name__ == "__main__":
    from pylab import *
    from pacal import *
#    B= BetaDistr(1,1) * UniformDistr(0,3)
#    B =(UniformDistr(0,3)+UniformDistr(0,1)+UniformDistr(0,1)+UniformDistr(0,1)) * (UniformDistr(0,1)+UniformDistr(0,1)+UniformDistr(0,1))
#    B = BetaDistr(4,4) *  (UniformDistr(-1,1)+UniformDistr(-1,2))
#    B.summary(show_moments=True)
#    print B.get_piecewise_pdf()
    from pacal.segments import PiecewiseFunction
    B = PiecewiseFunction(fun=lambda x:sin(3*x), breakPoints=[-1,0,1])
    
    B = B.toInterpolated()
    print B.segments[0].f.__class__
    #B = B.trimInterpolators(abstol=1e-15)
    print B.segments[0].f.Ys, B.segments[0].f.__class__
    D = B.diff()
    D2 = D.diff()
    D3 = D2.diff()
    D4 = D3.diff()
    D5 = D4.diff()
    print D.segments[0].f.Ys, D.segments[0].f.__class__ 
    print D2.segments[0].f.Ys
    print D.roots()
    figure()
    B.plot()
    D.plot()
    D2.plot()
    D3.plot()
    D4.plot()
    D5.plot()
    show()