Hi Gianluca Angelini,
I understand that you are trying to solve the equations using "integral" but in the provided code you have not used the "intergral" of MATLAB anywhere.
I tried to reproduce the error at my end and I found that "double()" is not used properly. The functionality of "double()" is to convert symbolic values into doubles but as in the equations there is no value provided for "freq_wave" symbolic varible so it gives error. Therefore, before using "double()" you should use "subs()" to assign a symbolic value to "freq_wave" and then use "double()".
vel_wind_R= 6.7;
teta_1rad= 1.04;
g=9.81;
Sig_Height=0.0213*(vel_wind_R^2);
T_zc=0.519*vel_wind_R;
AA=4*pi^3*(Sig_Height/(T_zc^2))^2;
BB=16*pi^3*(1/(T_zc)^4);
syms freq_wave
Spectre=AA/(freq_wave^5)*exp(-BB/(freq_wave^4)); %Bretschneider's spectre
integral=Spectre/(1-2*freq_wave*cos(teta_1rad)/g);
Spectre_e=subs(integral, freq_wave, pi); % replace freq_wave with pi
Spectre_e2 = double(Spectre_e)
You can refer below documentations for more information:
Hope it helps.