[JAVA] Code pour résoudre la matrice de nombres aléatoires par la méthode d'élimination Pivot Gauss et la méthode d'élimination Gauss et comparer la précision

J'ai soumis un devoir scolaire, j'ai donc enregistré le code sous forme d'article. La méthode essentielle d'élimination de Pivot Gauss et le code de la méthode d'élimination de Gauss sont des articles séparés. conditions: ・ Résolvez ʻax = b. ・ ʻA est une matrice aléatoire de 500 * 500 (composantes 1 à 9) ・ Les 2 normes de (b-ax) sont jetées dans ʻerr1 (Gauss) , ʻerr2 (Pivot Gauss) comme une erreur. ・ La langue est Java. Toute la source

	public static void main(String[] args) {
		//TODO talon de méthode généré automatiquement

		long t0;
		long time;
		int n =500;
		int m=100;
		double [][]a =new double[n][n];
		double []b =new double[n];
		double []x1 =new double[n];
		double []x2 =new double[n];
		double err1=0.0;
	//	double []err2 =new double[n];
	//	double []err1 = new double[n];
		double err2 =0.0;
		//Problème err1
		t0 = System.currentTimeMillis();
		for(int s=0;s<m;s++){
			for(int j=0;j<n;j++){
				for(int i=0;i<n;i++){
					a[i][j]=Math.abs((Math.random()));	
					b[i]  =Math.abs((Math.random()));
				}
			}
		
			x1 =Calc.Gauss(a, b);
			err1 = Calc.vecNorm2(Calc.subVec(b,Calc.matVec(a, x1)));
			x2 =Calc.pivotGauss(a, b);
			err2 =Calc.vecNorm2(Calc.subVec(b,Calc.matVec(a, x2)));
			System.out.println(err1);
			System.out.println(err2);
		//System.out.println("\n"+err2);
		}
		//System.out.println(Math.abs((Math.random())));
		time = System.currentTimeMillis()-t0;
		System.out.println("\n Temps de traitement:"+time);
		//Calc.printVec2(err1);
	}

Recommended Posts

Code pour résoudre la matrice de nombres aléatoires par la méthode d'élimination Pivot Gauss et la méthode d'élimination Gauss et comparer la précision
Code pour résoudre une matrice de nombres aléatoires avec la méthode d'élimination Pivot Gauss
Comparaison de la précision entre la méthode d'élimination Pivot Gauss et la méthode d'élimination Gauss
Préparer l'environnement pour java11 et javaFx avec Ubuntu 18.4