The impedance boundary condition in the FreeFem++

Dear all,
I am trying to make the impedance boundary condition in the FreeFem++ to simulate the acoustic wave. I have found it a little puzzle when I solve the linear Euler equations for (ux,uy,p,rho) and use such a boundary condition on the outlet like p = i * omega * Z * ux .
I add int1d(th, outlet)(1e30 * (p - i * omega * Z * ux) * vx) to my problem ( vx is my test function), but the results are not OK. Is there any suggestion or example for such problem?
Thanks a lot.

The problem is you use a penalty method with eps = 1e-30 ( this is to big)

try with pena = 1e5 to 1e10 no more due to number of digits in double precision.

int1d(th, outlet)(pena * (p - i * omega * Z * ux) * vx)