Esempio n. 1
0
    public double [,] generate_linear_matrix(Vector3 [] new_positions, double beta)
    {
        double [,] r = generate_rotation_matrix(new_positions);
        double [,] a = MatrixFunctions.matrixMultiply3x3(apq, aqq);
        //Rotation_test.print_matrix(aqq);


        double determinant = alglib.rmatrixdet(a);

        determinant = Mathf.Pow((float)determinant, 1.0f / 3.0f);
        MatrixFunctions.scalar_multiply(ref a, beta / determinant);
        MatrixFunctions.scalar_multiply(ref r, 1 - beta);

        MatrixFunctions.matrix_add_3x3(ref a, r);

        return(a);
    }