ich benutze eigentlich Scilab aber da in dem Forum von Scilab mir keiner geantwortet hat, habe ich es bei Matlab versucht. Die Codes sind identisch.
Ich hoffe, du kannst mir trotzdem helfen:
Code:
//Bereinigen der Konsole
clc
//Löschen der Variablen
clear
//Parameterfestlegung
//die Zeilen bilden die Schwankungen der Technologien 1-15 und die Spalten 1- 25 die jeweiligen Durchläufe
//aus den die Schwankungswerte der Technologien resultieren ab
u=[0.800.60.50.80.90.50.60.50.80.90.40.650.70.850.40.650.70.850.320.240.450.540.670.930.33;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13]
//Anzahl der Versuche
m=5
//Anzahl der Spalten bzw. Daten
n=25
//Schleife 1 bis m
for i=1:m
M=grand(u,"nor",0,1)
Mittelwert=mean(M)//Der arithmetischen Mittelwert
var=variance(M)//Die Varianz
sig=stdev(M)//Die empirische Standardabweichung
xAchse = linspace(min(M),max(M),m)//
gauss = 1/(sig * sqrt(2 * %pi)) * exp( - ((M - Mittelwert).^2)/(2 * var))//Verteilungsdichte
//sortieren der Messwerte (Aufsteigend)
xsort = gsort(M,"g","i");// Aufsteigend sortieren
//for i=1:m//Die Verteilungsfunktion // Muss die Schleife noch mit rein oder nicht?
F(i) = cdfnor("PQ",m,Mittelwert,sig)
//Call
tic end
//end
Ich sags mal so, wenn ich Peter1987 davon überzeugen kann unter MATLAB zu arbeiten, dann schreibe ich den Code gerne auf MATLAB um und löse die ggf. auftretenden Problem mit negativen Werten. Bitt per PN den Namen der Hochschule schicken und ich finde bestimmt eine existierende MATLAB Lizenz.
Erhalte aber dennoch negative Werte in der generierten Matrix M. Hoffe Ihr könnt mir trotzdem helfen!
Code:
//Bereinigen der Konsole
clc
//Löschen der Variablen
clear
//Parameterfestlegung
//die Zeilen bilden die Schwankungen der Technologien 1-15 und die Spalten 1- 25 die jeweiligen Durchläufe
//aus den die Schwankungswerte der Technologien resultieren
u=[0.800.60.50.80.90.50.60.50.80.90.40.650.70.850.40.650.70.850.320.240.450.540.670.930.33;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.210.230.560.670.680.770.770.760.650.430.450.320.120.160.540.610.870.560.720.750.320.340.540.650.43;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.110.530.340.460.750.810.440.340.230.210.280.340.410.460.410.490.520.530.720.140.250.240.170.230.63;
0.560.760.980.770.320.450.580.650.710.890.120.310.040.220.250.340.430.540.650.730.850.910.120.210.89;
0.300.160.250.380.940.550.360.450.580.390.540.650.570.150.140.550.370.350.320.540.250.640.470.830.13]
//Anzahl der Versuche
m=1
//Anzahl der Spalten bzw. Daten
n=25
//Schleife 1 bis m
for i=1:m
M=grand(u,"nor",0,1)
Mittelwert=mean(M)//Der arithmetischen Mittelwert
var=variance(M)//Die Varianz
sig=stdev(M)//Die empirische Standardabweichung
xAchse = linspace(min(M),max(M),length(M))//
gauss=1/(sig * sqrt(2 * %pi)) * exp( - ((xAchse - Mittelwert).^2)/(2 * var))//Verteilungsdichte
//sortieren der Messwerte (Aufsteigend)
xsort = gsort(M,"g","i");// Aufsteigend sortieren
for i=1:length(xsort)//Die Verteilungsfunktion // Muss die Schleife noch mit rein oder nicht?
F(i) = cdfnor("PQ",xsort(i),Mittelwert,sig)
//Call
tic end end
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.