Why does my ISO roads doesn´t fit to the reference values ?
Hello everybody !
I was generating random road profiles according to the ISO 8608 standard with the help of the following article:
http://link.springer.com/article/10.1007%2Fs12544-013-0127-8/fulltext.html
To prove if my roads have the given PSD-Value (for example Gd_0 = 16 * (10^-6) Road A), i used the 1D PSD function and generated a plot with PSD road displacement and ISO PSD over the spatial frequency.
1D PSD calculation for surface roughness profiles
My problem is that the PSD values does not fit together. If i´m generating a road with 16 * (10^-6), the graph should be in the middle of the reference ISO line.
Has anyone the same problem and can help ?
Many thanks !
Here my code:
clear all;close all;
% spatial frequency (n0) cycles per meter
Omega0 = 0.1;
% psd ISO (used for formula 8)
Gd_0 = 16 * (10^-6);
% waveviness
w = 2;
% road length
L = 250;
%delta n
N = 1000;
Omega_L = 0.004;
Omega_U = 4;
delta_n = 1/L; % delta_n = (Omega_U – Omega_L)/(N-1);
% spatial frequency band
Omega = Omega_L:delta_n:Omega_U;
%PSD of road
Gd = Gd_0.*(Omega./Omega0).^(-w);
% calculate amplitude using formula(8)
Amp = sqrt(2*Gd*delta_n);
% calculate amplitude using simplified formula(9)
% k = 3;
% Amp = sqrt(delta_n) * (2^k) * (10^-3) * (Omega0./Omega);
%random phases
Psi = 2*pi*rand(size(Omega));
% x abicsa from 0 to L
x = 0:0.25:250;
% road sinal
h= zeros(size(x));
for i=1:length(x)
h(i) = sum( Amp.*cos(2*pi*Omega*x(i) + Psi) );
end
plot(x, h*1000 );
xlabel(‘Distance m’);
ylabel(‘Elevation (mm)’);
grid on
%————————————————————————-
B = L/N;
[q , C] = psd_1D(h, B, ‘x’) % B is Sampling Interval (m)
lambda = (2*pi) ./ q; % wavelengths
f = q / (2*pi); % spatial frequency
PSD = 2 * pi * C; % power spectrum
figure(2)
loglog(f,PSD,Omega,Gd)
legend(‘PSD ISO Road’, ‘Reference PSD’)
xlabel(‘spatial frequency [cycle/m]’)
ylabel(‘PSD [m^3]’)
grid onHello everybody !
I was generating random road profiles according to the ISO 8608 standard with the help of the following article:
http://link.springer.com/article/10.1007%2Fs12544-013-0127-8/fulltext.html
To prove if my roads have the given PSD-Value (for example Gd_0 = 16 * (10^-6) Road A), i used the 1D PSD function and generated a plot with PSD road displacement and ISO PSD over the spatial frequency.
1D PSD calculation for surface roughness profiles
My problem is that the PSD values does not fit together. If i´m generating a road with 16 * (10^-6), the graph should be in the middle of the reference ISO line.
Has anyone the same problem and can help ?
Many thanks !
Here my code:
clear all;close all;
% spatial frequency (n0) cycles per meter
Omega0 = 0.1;
% psd ISO (used for formula 8)
Gd_0 = 16 * (10^-6);
% waveviness
w = 2;
% road length
L = 250;
%delta n
N = 1000;
Omega_L = 0.004;
Omega_U = 4;
delta_n = 1/L; % delta_n = (Omega_U – Omega_L)/(N-1);
% spatial frequency band
Omega = Omega_L:delta_n:Omega_U;
%PSD of road
Gd = Gd_0.*(Omega./Omega0).^(-w);
% calculate amplitude using formula(8)
Amp = sqrt(2*Gd*delta_n);
% calculate amplitude using simplified formula(9)
% k = 3;
% Amp = sqrt(delta_n) * (2^k) * (10^-3) * (Omega0./Omega);
%random phases
Psi = 2*pi*rand(size(Omega));
% x abicsa from 0 to L
x = 0:0.25:250;
% road sinal
h= zeros(size(x));
for i=1:length(x)
h(i) = sum( Amp.*cos(2*pi*Omega*x(i) + Psi) );
end
plot(x, h*1000 );
xlabel(‘Distance m’);
ylabel(‘Elevation (mm)’);
grid on
%————————————————————————-
B = L/N;
[q , C] = psd_1D(h, B, ‘x’) % B is Sampling Interval (m)
lambda = (2*pi) ./ q; % wavelengths
f = q / (2*pi); % spatial frequency
PSD = 2 * pi * C; % power spectrum
figure(2)
loglog(f,PSD,Omega,Gd)
legend(‘PSD ISO Road’, ‘Reference PSD’)
xlabel(‘spatial frequency [cycle/m]’)
ylabel(‘PSD [m^3]’)
grid on Hello everybody !
I was generating random road profiles according to the ISO 8608 standard with the help of the following article:
http://link.springer.com/article/10.1007%2Fs12544-013-0127-8/fulltext.html
To prove if my roads have the given PSD-Value (for example Gd_0 = 16 * (10^-6) Road A), i used the 1D PSD function and generated a plot with PSD road displacement and ISO PSD over the spatial frequency.
1D PSD calculation for surface roughness profiles
My problem is that the PSD values does not fit together. If i´m generating a road with 16 * (10^-6), the graph should be in the middle of the reference ISO line.
Has anyone the same problem and can help ?
Many thanks !
Here my code:
clear all;close all;
% spatial frequency (n0) cycles per meter
Omega0 = 0.1;
% psd ISO (used for formula 8)
Gd_0 = 16 * (10^-6);
% waveviness
w = 2;
% road length
L = 250;
%delta n
N = 1000;
Omega_L = 0.004;
Omega_U = 4;
delta_n = 1/L; % delta_n = (Omega_U – Omega_L)/(N-1);
% spatial frequency band
Omega = Omega_L:delta_n:Omega_U;
%PSD of road
Gd = Gd_0.*(Omega./Omega0).^(-w);
% calculate amplitude using formula(8)
Amp = sqrt(2*Gd*delta_n);
% calculate amplitude using simplified formula(9)
% k = 3;
% Amp = sqrt(delta_n) * (2^k) * (10^-3) * (Omega0./Omega);
%random phases
Psi = 2*pi*rand(size(Omega));
% x abicsa from 0 to L
x = 0:0.25:250;
% road sinal
h= zeros(size(x));
for i=1:length(x)
h(i) = sum( Amp.*cos(2*pi*Omega*x(i) + Psi) );
end
plot(x, h*1000 );
xlabel(‘Distance m’);
ylabel(‘Elevation (mm)’);
grid on
%————————————————————————-
B = L/N;
[q , C] = psd_1D(h, B, ‘x’) % B is Sampling Interval (m)
lambda = (2*pi) ./ q; % wavelengths
f = q / (2*pi); % spatial frequency
PSD = 2 * pi * C; % power spectrum
figure(2)
loglog(f,PSD,Omega,Gd)
legend(‘PSD ISO Road’, ‘Reference PSD’)
xlabel(‘spatial frequency [cycle/m]’)
ylabel(‘PSD [m^3]’)
grid on iso road 8608, random, road, psd, matlab, 8608, 1d psd MATLAB Answers — New Questions