static double[][] file2array(String fn)
    {
        String s;
        Vector rows=new Vector(40);
        Vector elems;
        double[][] M;
        try
        {
            DataInputStream mat = Elib.openfileREAD(fn);
            int rowc=0; int colc=0;
            while (null!=(s=mat.readLine()))
            {
                if (s.equals(""))
                    continue;
                if (s.charAt(0) == '#')
                {
                    System.out.println(s);
                    continue;
                }
                rowc++;
                StringTokenizer st= new StringTokenizer(s," ");
                elems=new Vector(20); colc=0;
                while (st.hasMoreTokens())
                {
                    colc++;
                    elems.addElement(new Double(toDouble(st.nextToken())));
                }
                rows.addElement(elems);
            }
            M=new double[rowc][colc];
            Enumeration ro=rows.elements();
            for (int i=0;i<rowc;i++)
            {
                Vector v=(Vector)ro.nextElement();
                Enumeration co=v.elements();
                for (int j=0;j<colc;j++)
                    M[i][j]=((Double)co.nextElement()).doubleValue();
            }
            mat.close();
        }
        catch (IOException e)
        {
            System.err.println("File2Array : EXCEPTION :"+e);
            return null;
        }
        return M;
    }