[JAVA] Code zum Lösen der Zufallszahlenmatrix nach der Pivot-Gauß-Eliminierungsmethode und der Gauß-Eliminierungsmethode und zum Vergleichen der Genauigkeit

Ich habe eine Schulaufgabe eingereicht und den Code als Artikel gespeichert. Die wesentliche Pivot-Gauß-Eliminierungsmethode und der Code der Gauß-Eliminierungsmethode sind separate Artikel. Bedingungen: ・ Löse ax = b. A A ist eine Zufallsmatrix von 500 * 500 (Komponenten 1 bis 9) ・ Die 2 Normen von "(b-ax)" werden als Fehler in "err1 (Gauss)" und "err2 (Pivot Gauss)" geworfen. ・ Sprache ist Java. Ganze Quelle

	public static void main(String[] args) {
		//TODO automatisch generierter Methodenstub

		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;
		//Problem 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 Bearbeitungszeit:"+time);
		//Calc.printVec2(err1);
	}

Recommended Posts

Code zum Lösen der Zufallszahlenmatrix nach der Pivot-Gauß-Eliminierungsmethode und der Gauß-Eliminierungsmethode und zum Vergleichen der Genauigkeit
Code zum Lösen einer Zufallszahlenmatrix mit der Pivot-Gauß-Eliminierungsmethode
Genauigkeitsvergleich zwischen der Pivot-Gauß-Eliminierungsmethode und der Gauß-Eliminierungsmethode
Bereiten Sie die Umgebung für Java11 und JavaFx mit Ubuntu 18.4 vor