anchor.diff:                        Gave, Gvar, bnumMLMCsamps, numcellsLevel0, ncellwidth
   
     if(.not.allocated(numMLMCcells)) allocate(numMLMCcells(0:0))
  -  if(.not.allocated(M_optsamps)) allocate(M_optsamps(2,0:0))
  +  if(.not.allocated(M_optsamps)) allocate(M_optsamps(3,0:0))
   
     if(.not.allocated(Q_ufunctional)) allocate(Q_ufunctional(bnumMLMCsamps,0:0))
     if(.not.allocated(G_ufunctional)) allocate(G_ufunctional(bnumMLMCsamps,0:0))
  
positive.code: 
  print *,"new samps M_optsamps(1,:):",M_optsamps(1,:)
  print *,"new samps M_optsamps(2,:):",M_optsamps(2,:)
    do ilevel = 0,Level                                          !search each level
  print *,"ilevel:",ilevel
      if( M_optsamps(1,ilevel)>M_optsamps(2,ilevel) ) then       !if new samps to compute
  
negative.code:   numMLMCcells    = numcellsLevel0
    M_optsamps(1,0) = bnumMLMCsamps
    M_optsamps(2,0) = 0
    M_optsamps(3,0) = 0
  
    Q_ufunctional = 0.0d0
    G_ufunctional = 0.0d0
  