X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=mjo%2Fcone%2Frearrangement.py;h=b32938117bbf176450d7aeefe246cbb5e6731361;hb=2ae468e06b4874fde9cf80981dc41091322d3156;hp=2cde6386ddefe8c2384030d7f1ab25bdd4491c58;hpb=f9d0571d553891281fd31949871e27e1f973a281;p=sage.d.git diff --git a/mjo/cone/rearrangement.py b/mjo/cone/rearrangement.py index 2cde638..b329381 100644 --- a/mjo/cone/rearrangement.py +++ b/mjo/cone/rearrangement.py @@ -1,12 +1,4 @@ -# Sage doesn't load ~/.sage/init.sage during testing (sage -t), so we -# have to explicitly mangle our sitedir here so that "mjo.cone" -# resolves. -from os.path import abspath -from site import addsitedir -addsitedir(abspath('../../')) - from sage.all import * -from mjo.cone.cone import lyapunov_rank, random_element def rearrangement_cone(p,n): r""" @@ -36,6 +28,10 @@ def rearrangement_cone(p,n): A polyhedral closed convex cone object representing a rearrangement cone of order ``p`` in ``n`` dimensions. + SETUP:: + + sage: from mjo.cone.rearrangement import rearrangement_cone + EXAMPLES: The rearrangement cones of order one are nonnegative orthants:: @@ -64,11 +60,11 @@ def rearrangement_cone(p,n): The Lyapunov rank of the rearrangement cone of order ``p`` in ``n`` dimensions is ``n`` for ``p == 1`` or ``p == n`` and one otherwise:: - sage: all([ lyapunov_rank(rearrangement_cone(p,n)) == n + sage: all([ rearrangement_cone(p,n).lyapunov_rank() == n ....: for n in range(2, 10) ....: for p in [1, n-1] ]) True - sage: all([ lyapunov_rank(rearrangement_cone(p,n)) == 1 + sage: all([ rearrangement_cone(p,n).lyapunov_rank() == 1 ....: for n in range(3, 10) ....: for p in range(2, n-1) ]) True @@ -127,6 +123,11 @@ def has_rearrangement_property(v, p): components sum to a nonnegative number), ``True`` is returned. Otherwise ``False`` is returned. + SETUP:: + + sage: from mjo.cone.rearrangement import (has_rearrangement_property, + ....: rearrangement_cone) + EXAMPLES: Every element of a rearrangement cone should have the property:: @@ -134,8 +135,9 @@ def has_rearrangement_property(v, p): sage: for n in range(2,10): ....: for p in range(1, n-1): ....: K = rearrangement_cone(p,n) - ....: v = random_element(K) - ....: if not has_rearrangement_property(v,p): print v + ....: v = K.random_element() + ....: if not has_rearrangement_property(v,p): + ....: print(v) """ components = sorted(v)[0:p]