diff --git a/pub/src/func.cpp b/pub/src/func.cpp
index 9436b67cba50541739cf54a6313490056df5711e..466dee4c704b57df840a795abd2367ca1c48212e 100644
--- a/pub/src/func.cpp
+++ b/pub/src/func.cpp
@@ -194,6 +194,21 @@ double func_im_havneg (double v, double a, double g) {
     return pow( 1 + 2*pow(v,a)*cos(M_PI*a/2)+pow(v,2*a), -g/2 ) *
         sin( g*aux_phi_havneg( v, a ) ); }
 
+// EXPERIMENTAL
+double func_imw( double r, double a ){
+    return imw( r, a );
+}
+double func_rew( double r, double a ){
+    return rew( r, a );
+}
+double func_myimw( double r, double a ){
+    return myimw( r, a );
+}
+double func_myrew( double r, double a ){
+    return myrew( r, a );
+}
+
+
 //**************************************************************************//
 //*   Functions of three arguments                                         *//
 //**************************************************************************//
@@ -485,6 +500,12 @@ void NFunctions::initialize(void) {
     CFunc( "cauchy",  func_cauchy, 0, 0,
         "(x,w): the Cauchy-Lorentz function ?/(x^2+w^2)" ).register_me();
 
+    // EXPERIMENTAL
+    CFunc( "imw",    func_imw,   0, 0, "imw"   ).register_me();
+    CFunc( "rew",    func_rew,   0, 0, "rew"   ).register_me();
+    CFunc( "myimw",  func_myimw, 0, 0, "myimw" ).register_me();
+    CFunc( "myrew",  func_myrew, 0, 0, "myrew" ).register_me();
+
 // f(3 args)
     CFunc( "q4w",      func_q4w, 0, 0,
         "(x,y,z): ?" ).register_me();