Пример #1
0
 public override void SetParams(ParamBundle pb)
 {
     a = pb.eqnParam[0];
     b = pb.eqnParam[1];
     c = pb.eqnParam[2];
     d = pb.eqnParam[3];
 }
Пример #2
0
 public override void SetParams(ParamBundle pb)
 {
     alpha = pb.eqnParam[0];
     beta  = pb.eqnParam[1];
     zeta  = pb.eqnParam[2];
     delta = pb.eqnParam[3];
 }
        protected void _GetUrlInternal(ParamBundle param)
        {
            UnityWebRequest webRequest = UnityWebRequest.Get(param.url);

            webRequest.timeout = param.timeout;
            _AddRequest(webRequest, param.encrypt, param.strResponse, param.binResponse, param.onProgress);
        }
Пример #4
0
 public override void SetParams(ParamBundle pb)
 {
     alpha   = pb.eqnParam[0];
     beta    = pb.eqnParam[1];
     delta   = pb.eqnParam[2];
     epsilon = pb.eqnParam[3];
     rho     = pb.eqnParam[4];
     zeta    = pb.eqnParam[5];
 }
Пример #5
0
 // copy constructor used by Editor script
 public ParamBundle(ParamBundle fromPb)
 {
     eqnParam = new float[fromPb.eqnParam.Length];
     for (int i = 0; i < eqnParam.Length; i++)
     {
         eqnParam[i] = fromPb.eqnParam[i];
     }
     this.label           = fromPb.label;
     this.initialPosition = fromPb.initialPosition;
     this.offset          = fromPb.offset;
     this.scale           = fromPb.scale;
 }
Пример #6
0
    /// <summary>
    /// Create the ChaosEqn implementation for the specified index in the eqnList, with the
    /// selected param bundle in place
    /// </summary>
    /// <param name="index">Index.</param>
    public static ChaosEqn Create(int index, int paramIndex, ParamBundle customParams)
    {
        ChaosEqn chaosEqn = System.Activator.CreateInstance(eqnClasses[index]) as ChaosEqn;

        ParamBundle[] paramBundles = chaosEqn.GetParamBundles();
        if (paramIndex < paramBundles.Length)
        {
            chaosEqn.paramBundle = paramBundles[paramIndex];
        }
        else
        {
            chaosEqn.paramBundle = customParams;
        }
        chaosEqn.SetParams(chaosEqn.paramBundle);
        return(chaosEqn);
    }
Пример #7
0
    public DequanLee()
    {
        name = "DequanLee";

        eqnStrings = new string[] {
            "xdot = alpha(y-x) - delta xz",
            "ydot = rho x + zeta y - xz",
            "zdot = beta z + xy - epsilon x^2"
        };

        paramBundles = new ParamBundle[] {
//			new ParamBundle("default (scaled)", 5f, -10f, -0.38f,
//				new Vector3(1f,1f,1f), new Vector3(-04.1f,-04.4f,-15.5f), 0.15f),
            new ParamBundle("default", new float[] { 40f, 1.833f, 0.16f, 0.65f, 55f, 20f },
                            new Vector3(0.349f, 0f, -0.16f)),
        };

        paramNames     = new string[] { "alpha", "beta", "delta", "eplsilon", "rho", "zeta" };
        slideShowSpeed = 1f;
    }
Пример #8
0
    public ShimizuMorioka()
    {
        name = "ShimizuMorioka";

        eqnStrings = new string[] {
            "xdot = y",
            "ydot = x - ay - xz",
            "zdot = -bz + x^2"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0.85f, 0.5f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(-000.1f, 000.2f, -001.1f), 04.23f),
            new ParamBundle("default", 0.85f, 0.5f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames = new string[] { "a", "b", ChaoticSystem.NO_PARAM };
    }
Пример #9
0
    public Thomas()
    {
        name = "Thomas";

        eqnStrings = new string[] {
            "xdot = -beta x + sin(y)",
            "ydot = -beta y + sin(z)",
            "zdot = -beta z + sin(x)"
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", new float[] { 0.19f },
                            new Vector3(0.1f, 0, 0), new  Vector3(-00.5f, -00.3f, 00.3f), 1.32f),
            new ParamBundle("default", new float[] { 0.19f },
                            new Vector3(0.1f, 0, 0)),
        };

        paramNames     = new string[] { "beta" };
        slideShowSpeed = 8f;
    }
Пример #10
0
    private float rho   = 28f;                  // guess

    public Lorenz()
    {
        name = "Lorenz";

        eqnStrings = new string[] {
            "x = sigma (y - x)",
            "y = - x z + rho x - y",
            "z = x y - b z"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 10f, 8f / 3f, 28f,
                            new Vector3(2f, 0.5f, 23f), new Vector3(0f, 0f, -25.2f), 0.22f),
            new ParamBundle("default", 10f, 8f / 3f, 28f,
                            new Vector3(0.1f, 0.1f, 0.1f)),
        };

        paramNames = new string[] { "sigma", "b", "rho" };
    }
Пример #11
0
    public Bouali2()
    {
        name = "Bouali2";

        eqnStrings = new string[] {
            "xdot = x(4-y)+az",
            "ydot = -y(1-x^2)",
            "zdot = -x(1.5 - bz) - 0.05z "
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default", new float[] { 0.3f, 1f },
                            new Vector3(0f, 0, 0.1f)),
//			new ParamBundle("default", new float[]{0.3f, 1f},
//					new Vector3(0.5f, -1f, 0.5f)),
        };

        paramNames     = new string[] { "a", "b", };
        slideShowSpeed = 1f;
    }
Пример #12
0
    private float G = 1.4f;     // control parameter

    public LorenzNew()
    {
        name = "LorenzNew";

        eqnStrings = new string[] {
            "x = -ax - y^2 - z^2 + aF",
            "y = -y + xy - bxz + G",
            "z = -z + bxy + xz"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", new float[] { 0.25f, 4f, 2.5f, 1.4f },
                            new Vector3(0.1f, 0.1f, 0.1f), new Vector3(0f, 0f, -25.2f), 0.22f),
            new ParamBundle("default", new float[] { 0.25f, 4f, 1.77f, 1.8f },
                            new Vector3(1f, 1f, 1f)),
        };

        paramNames = new string[] { "a", "b", "F", "G" };
    }
Пример #13
0
    public Anishchenko_Astakhov()
    {
        name = "Anishchenko_Astakhov";

        eqnStrings = new string[] {
            "xdot = mu x + y - x z",
            "ydot = -x",
            "zdot = -eta z + eta I(x) x^2"
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", 1.2f, 0.5f, 0f,
                            new Vector3(0.1f, 0f, 0f), new Vector3(-00.6f, -02.3f, -01.9f), 1.54f),
            new ParamBundle("default", 1.2f, 0.5f, 0f,
                            new Vector3(0.1f, 0f, 0f)),
        };

        paramNames     = new string[] { "mu", "eta" };
        slideShowSpeed = 2.5f;
    }
Пример #14
0
    public Halvorsen()
    {
        name = "Halvorsen";

        eqnStrings = new string[] {
            "xdot = -alpha x - 4y -4z -y^2",
            "ydot = -alpha y - 4z - 4x - z^2",
            "zdot = -alpha z - 4x -4y -x^2"
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", new float[] { 1.4f },
                            new Vector3(0.1f, 0, 0), new Vector3(02.9f, 03.5f, 03.5f), 0.51f),
            new ParamBundle("default", new float[] { 1.4f },
                            new Vector3(0.1f, 0, 0)),
        };

        paramNames     = new string[] { "alpha" };
        slideShowSpeed = 1f;
    }
Пример #15
0
    public Aizawa()
    {
        name = "Aizawa";

        eqnStrings = new string[] {
            "xdot = (z-b)x - d y",
            "ydot = d x + (z-b)y",
            "zdot = c + a z - z^3/3 - (x^2+y^2)(1+ez) + f z x^3 "
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", new float[] { 0.95f, 0.7f, 0.6f, 3.5f, 0.25f, 0.1f },
                            new Vector3(0.1f, 0f, 0f), new Vector3(00.0f, 00.0f, -00.8f), 3.37f),
            new ParamBundle("default", new float[] { 0.95f, 0.7f, 0.6f, 3.5f, 0.25f, 0.1f },
                            new Vector3(0.1f, 0f, 0f)),
        };

        paramNames     = new string[] { "a", "b", "c", "d", "e", "f" };
        slideShowSpeed = 1f;
    }
Пример #16
0
    public Hadley()
    {
        name = "Hadley";

        eqnStrings = new string[] {
            "xdot = -y^2 -z^2 - alpha x + alpha zeta",
            "ydot = xy - beta xz - y + delta",
            "zdot = beta x y + xz -z"
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", new float[] { 0.2f, 4f, 8f, 1f },
                            new Vector3(0.1f, 0, 0), new Vector3(-01.1f, 00.2f, -00.4f), 2.97f),
            new ParamBundle("default", new float[] { 0.2f, 4f, 8f, 1f },
                            new Vector3(0.1f, 0, 0)),
        };

        paramNames     = new string[] { "alpha", "beta", "zeta", "delta" };
        slideShowSpeed = 1f;
    }
Пример #17
0
    public LuChenCheng()
    {
        name = "LuChenCheng";

        eqnStrings = new string[] {
            "xdot = -(ab)/(a+b)x - yz",
            "ydot = ay + xy",
            "zdot = bz + xy"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", -6f, -15f, 0f,
                            new Vector3(1f, 0f, 1f), new Vector3(-3.4f, -20.1f, -4f), 0.12f),
            new ParamBundle("default", -6f, -15f, 0f,
                            new Vector3(1f, 0f, 1f)),
        };

        paramNames = new string[] { "a", "b", ChaoticSystem.NO_PARAM };
    }
Пример #18
0
    public LiuChen()
    {
        name = "LiuChen";

        eqnStrings = new string[] {
            "xdot = alpha y + beta x + eta yz",
            "ydot = delta y - z + epsilon x z",
            "zdot = zeta z + rho xy"
        };

        paramBundles = new ParamBundle[] {
//			new ParamBundle("default (scaled)", 5f, -10f, -0.38f,
//				new Vector3(1f,1f,1f), new Vector3(-04.1f,-04.4f,-15.5f), 0.15f),
            new ParamBundle("default", new float[] { 2.4f, -3.78f, 14f, -11f, 4f, 5.58f, 1f },
                            new Vector3(0.1f, 0, 0)),
        };

        paramNames     = new string[] { "alpha", "beta", "eta", "delta", "eplsilon", "rho", "zeta" };
        slideShowSpeed = 1f;
    }
Пример #19
0
    public ChenLee()
    {
        name = "ChenLee";

        eqnStrings = new string[] {
            "xdot = ax - yz",
            "ydot = by + xz",
            "zdot = cz + xy/3"
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", 5f, -10f, -0.38f,
                            new Vector3(1f, 1f, 1f), new Vector3(-04.1f, -04.4f, -15.5f), 0.15f),
            new ParamBundle("default", 5f, -10f, -0.38f,
                            new Vector3(1f, 1f, 1f)),
        };

        paramNames     = new string[] { "a", "b", "c" };
        slideShowSpeed = 1f;
    }
Пример #20
0
    public Arneodo()
    {
        name = "Arneodo";

        eqnStrings = new string[] {
            "xdot = y",
            "ydot = z",
            "zdot = -a x - b y - c z  + d x^3 "
        };

        paramBundles = new ParamBundle[] {
            new ParamBundle("default (scaled)", new float[] { -5.5f, 3.5f, 1f, -1f },
                            new Vector3(0.5f, -1f, 0.5f), new Vector3(00.0f, 00.1f, 00.2f), 0.46f),
            new ParamBundle("default", new float[] { -5.5f, 3.5f, 1f, -1f },
                            new Vector3(0.5f, -1f, 0.5f)),
        };

        paramNames     = new string[] { "a", "b", "c", "d" };
        slideShowSpeed = 1f;
    }
Пример #21
0
    public Chen()
    {
        name = "Chen";

        eqnStrings = new string[] {
            "xdot = a(y-x)",
            "ydot = (c-a)x - xz + cy",
            "zdot = xy - bz"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 40f, 3f, 28f,
                            new Vector3(-0.1f, 0.5f, -0.6f), new Vector3(-2.5f, -3f, -18.9f), 0.25f),
            new ParamBundle("default", 40f, 3f, 28f,
                            new Vector3(-0.1f, 0.5f, -0.6f)),
        };

        paramNames     = new string[] { "a", "b", "c" };
        slideShowSpeed = 0.9f;
    }
Пример #22
0
    public SprottH()
    {
        name = "SprottH";

        eqnStrings = new string[] {
            "xdot = -y + z^2",
            "ydot = x + 0.5 y",
            "zdot = x - z"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(1.3f, -1.6f, 0.4f), 1.85f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #23
0
    public SprottN()
    {
        name = "SprottN";

        eqnStrings = new string[] {
            "xdot = - 2y",
            "ydot = x + z^2",
            "zdot = 1 + y - 2z"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, 1.5f, .1f), new Vector3(10.4f, 3.6f, 0.4f), 0.31f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, 1.5f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #24
0
    public NoseHoover()
    {
        name = "NoseHoover(SprottA)";

        eqnStrings = new string[] {
            "xdot = y",
            "ydot = -x +yz",
            "zdot = 1 - y^2"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(-0.1f, 0.5f, -0.6f), new Vector3(-0.3f, -1.2f, 0.1f), 1.71f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(-0.1f, 0.5f, -0.6f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #25
0
    public Rucklidge()
    {
        name = "Rucklidge";

        eqnStrings = new string[] {
            "xdot = - a x + l y - y z",
            "ydot = x",
            "zdot = -z + y^2"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 2f, 6.7f, 0f,
                            new Vector3(0f, 0.8f, 0f), new Vector3(-0.2f, 0f, -7.8f), 0.57f),
            new ParamBundle("default", 2f, 6.7f, 0f,
                            new Vector3(0f, 0.8f, 0f)),
        };

        paramNames     = new string[] { "a", "l", "" };
        slideShowSpeed = 2.5f;
    }
Пример #26
0
    public SprottI()
    {
        name = "SprottI";

        eqnStrings = new string[] {
            "xdot = -0.2 y",
            "ydot = x + z",
            "zdot = x + y^2 - z"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(0.2f, 0f, 0f), 7.06f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #27
0
    public SprottJ()
    {
        name = "SprottJ";

        eqnStrings = new string[] {
            "xdot = 2 z",
            "ydot = -2y + z",
            "zdot = -x + y + y^2"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, -1.5f, -3f), new Vector3(-7.9f, -0.1f, 0.6f), 0.35f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, -1.5f, -3f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #28
0
    public SprottD()
    {
        name = "SprottD";

        eqnStrings = new string[] {
            "xdot = -y",
            "ydot = x+z",
            "zdot = xz + 3y^2"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(2.1f, 0.2f, -1.6f), 2.7f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #29
0
    public SprottK()
    {
        name = "SprottK";

        eqnStrings = new string[] {
            "xdot = xy - z",
            "ydot = x - y ",
            "zdot = x + 0.3z"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(0.7f, 0.3f, -1.3f), 2.41f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }
Пример #30
0
    public SprottL()
    {
        name = "SprottL";

        eqnStrings = new string[] {
            "xdot = y + 3.9z",
            "ydot = 0.9x^2 - y ",
            "zdot = 1 - x"
        };

        paramBundles = new ParamBundle[] {
            // sigma, b, rho
            new ParamBundle("default (scaled)", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f), new Vector3(0.3f, -10.5f, 3.4f), 0.35f),
            new ParamBundle("default", 0f, 0f, 0f,
                            new Vector3(.1f, .1f, .1f)),
        };

        paramNames     = new string[] { ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM, ChaoticSystem.NO_PARAM };
        slideShowSpeed = 2f;
    }