function [f] = f2ha(u,k,e) v = real(ifft(u)); u_x = real(ifft(1i*k.*u)); % u_xx = real(ifft(-k.^2.*u)); u_xxx = real(ifft(-1i*k.^3.*u)); % u_xxxx = real(ifft(k.^4.*u)); % f = e^2*(u_x.*u_xxx+v.*u_xxxx)+ 3*v.^2.*(u_x).^2 + v.^3.*u_xx; f1 = real(ifft(i*k.*fft(v.*u_xxx))); f2 = real(ifft(i*k.*fft(v.^3.*u_x))); f = -e^2*f1 - f2;