diff --git a/LArCalorimeter/LArMonTools/LArMonTools/LArNoiseCorrelationMon.h b/LArCalorimeter/LArMonTools/LArMonTools/LArNoiseCorrelationMon.h
deleted file mode 100755
index a5e8c89b7540812fede10c6b07ac5787e6e928f4..0000000000000000000000000000000000000000
--- a/LArCalorimeter/LArMonTools/LArMonTools/LArNoiseCorrelationMon.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
-  Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
-*/
-
-/**
- * TBD: update
- * @class LArNoiseCorrelationMon
- * @author Louis Helary 
- *
- */
-
-#ifndef LARCORRMON_H
-#define LARCORRMON_H
-
-//inheritance:
-#include "AthenaMonitoring/ManagedMonitorToolBase.h"
-
-
-//LAr services:
-#include "LArElecCalib/ILArPedestal.h"
-#include "LArRecConditions/ILArBadChannelMasker.h"
-
-
-
-//STL:
-#include <string>
-
-
-
-class LArOnlineID;
-class HWIdentifier;
-class LArOnlineIDStrHelper;
-class LArCablingService;
-class TProfile2D_LW;
-class TProfile_LW;
-class TH2F_LW;
-
-class LArNoiseCorrelationMon: public ManagedMonitorToolBase
-{
-  
-  
-public:
-  LArNoiseCorrelationMon(const std::string& type, 
-	      const std::string& name,
-	      const IInterface* parent);
-  
-  /** @brief Default destructor */
-  virtual ~LArNoiseCorrelationMon();
-  
-  
-   
-  virtual StatusCode initialize() override;
-  virtual StatusCode finalize() override;
-  virtual StatusCode bookHistograms() override;
-  virtual StatusCode fillHistograms() override;
-  virtual StatusCode procHistograms() override;
-  
-protected:
-  
-  
-  /** services  */
-  LArOnlineIDStrHelper* m_strHelper;
-  const LArOnlineID* m_LArOnlineIDHelper;
-  
-  /** Handle to LArCablingService */
-  ToolHandle<LArCablingService> m_LArCablingService; 
-  
-  /** Handle to bad-channel mask */
-  ToolHandle<ILArBadChannelMasker> m_badChannelMask;
-  
-  /** Handle to pedestal */
-  const DataHandle<ILArPedestal>  m_larPedestal;
-  
-  
-private:
-  
-  /**correlation histograms*/
-  int Nchan; 
-  double chan_low,chan_up;
-  std::string  hist_name;
-  std::string hist_title;
-
-  /** The FEB map*/
-  std::map<HWIdentifier,std::pair<TH2F_LW*,std::pair<TH2F_LW*,TProfile_LW*> > > m_FEBhistograms; 
-  std::pair<TH2F_LW*,std::pair<TH2F_LW*,TProfile_LW*> > m_histos;  //for handling histograms
-
-  /** list of FEBs to monitor. FEB names are expected to be of the type  LARONLINEID defined in the package atlas/LArCalorimeter/LArMonTools/LArMonTools/LArOnlineIDStrHelper.h  e.g. 'BarrelCFT00Slot02'  */
-  std::vector<std::string> m_FEBsToMonitor; 
-
-  /** to avoid publishing tons of histograms online, in case it's a problem*/
-  bool m_publishAllFebsOnline;
-
-  /** to avoid asking for triggers in case of a calibration run*/
-  bool m_isCalibrationRun;
-  
-  /**declare identifier*/
-  HWIdentifier m_febID;
-  int m_ch1,m_ch2;  
-
-  /**declaration variables used in joboptions*/
-  bool m_IsOnline; 
-  bool m_ignoreKnownBadChannels;
-
-  std::string m_LArDigitContainerKey;
-  std::string m_larPedestalKey;
-  
-  /** Private members*/
-  int m_evtId;
-  std::vector<std::string> m_triggers;
-  
-  /** Declare methods used*/
-  bool isGoodChannel(const HWIdentifier id,const float ped) const;
-  void bookSelectedFEBs(MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC);
-  void bookAllFEBs(MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC);
-  void bookThisFEB(HWIdentifier id,MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC);
-
-};
-
-#endif
diff --git a/LArCalorimeter/LArMonTools/python/LArMonFlags.py b/LArCalorimeter/LArMonTools/python/LArMonFlags.py
index 618b528ce7a955274c10e4e632344f0fb8761f13..9b6b81e31a5f6db8b5f7f972b2e875ba0cec3f64 100644
--- a/LArCalorimeter/LArMonTools/python/LArMonFlags.py
+++ b/LArCalorimeter/LArMonTools/python/LArMonFlags.py
@@ -122,13 +122,6 @@ class doLArDigitMon(JobProperty):
     StoredValue=True
 list+=[doLArDigitMon]
 
-class doLArNoiseCorrelationMon(JobProperty):
-    """ Global switch for doLArNoiseCorrelationMon """
-    statusOn=True
-    allowedTypes=['bool']
-    StoredValue=True
-list+=[doLArNoiseCorrelationMon]
-
 class doLArNoisyROMon(JobProperty):
     """ Global switch for doLArNoisyROMon """
     statusOn=True
diff --git a/LArCalorimeter/LArMonTools/share/LArAllMonitoring_jobOptions.py b/LArCalorimeter/LArMonTools/share/LArAllMonitoring_jobOptions.py
index d6b62b58e7c4a90cb61483c69de1e0ea67a4fc62..5e0d5a7a9fb1080a36f8090a93e6601d7fbd1ce6 100755
--- a/LArCalorimeter/LArMonTools/share/LArAllMonitoring_jobOptions.py
+++ b/LArCalorimeter/LArMonTools/share/LArAllMonitoring_jobOptions.py
@@ -51,8 +51,6 @@ else:
 if 'LArDigitKey'  in dir() :
     LArMonFlags.LArDigitKey=LArDigitKey 
 
-
-
 # This is the main block choosing what monitoring to run.
 # There is some repetition, but I think maintenance is easier (Rob).
 
@@ -76,8 +74,6 @@ if jobproperties.Beam.beamType() == 'cosmics':
                 include ("LArMonTools/LArCoverage_jobOptions.py")
             if LArMonFlags.doLArDigitMon():
                 include ("LArMonTools/LArDigitMon_jobOptions.py")
-            if LArMonFlags.doLArNoiseCorrelationMon():
-                include ("LArMonTools/LArNoiseCorrelationMon_jobOptions.py")
             if LArMonFlags.doLArNoisyROMon():
                 include ("LArMonTools/LArNoisyROMon_jobOptions.py")
             if LArMonFlags.doLArRawChannelMon():
@@ -85,7 +81,6 @@ if jobproperties.Beam.beamType() == 'cosmics':
             if LArMonFlags.doLArCollisionTimeMon():
                 include("LArMonTools/LArCollisionTimeMonTool_jobOptions.py")
 
-
 elif jobproperties.Beam.beamType() == 'singlebeam':
     if larESDMon and not athenaCommonFlags.isOnline():
         if LArMonFlags.doLArAffectedRegions():
@@ -104,8 +99,6 @@ elif jobproperties.Beam.beamType() == 'singlebeam':
                 include ("LArMonTools/LArCoverage_jobOptions.py")
             if LArMonFlags.doLArDigitMon():
                 include ("LArMonTools/LArDigitMon_jobOptions.py")
-            if LArMonFlags.doLArNoiseCorrelationMon():
-                include ("LArMonTools/LArNoiseCorrelationMon_jobOptions.py")
             if LArMonFlags.doLArNoisyROMon():
                 include ("LArMonTools/LArNoisyROMon_jobOptions.py")
             if LArMonFlags.doLArRawChannelMon():
@@ -130,8 +123,6 @@ else:  # should be jobproperties.Beam.beamType() =='collisions'
                 include ("LArMonTools/LArCoverage_jobOptions.py")
             if LArMonFlags.doLArDigitMon():
                 include ("LArMonTools/LArDigitMon_jobOptions.py")
-            if LArMonFlags.doLArNoiseCorrelationMon():
-                include ("LArMonTools/LArNoiseCorrelationMon_jobOptions.py")
             if LArMonFlags.doLArNoisyROMon():
                 include ("LArMonTools/LArNoisyROMon_jobOptions.py")
             if LArMonFlags.doLArRawChannelMon():
diff --git a/LArCalorimeter/LArMonTools/share/LArNoiseCorrelationMon_jobOptions.py b/LArCalorimeter/LArMonTools/share/LArNoiseCorrelationMon_jobOptions.py
deleted file mode 100644
index ca2a76a166e8fb59c9aa14c1325de4d359fb9324..0000000000000000000000000000000000000000
--- a/LArCalorimeter/LArMonTools/share/LArNoiseCorrelationMon_jobOptions.py
+++ /dev/null
@@ -1,44 +0,0 @@
-#from LArCellRec.LArNoisyROFlags import larNoisyROFlags
-
-# --- for athena online running ---
-if 'EventBlockSize' not in dir():
-    EventBlockSize=0
-
-
-#Run is Online or Offline:
-OnlineMode=athenaCommonFlags.isOnline()
-
-
-#some FEBs to be monitored (updated 04 may 2018)
-MiniNoiseBurstFlagging_FEBs = ["barrelAft09slot02","barrelAft09slot14","barrelAft10slot10","barrelAft10slot14","barrelAft31slot14","barrelCft08slot14","barrelCft22slot07","barrelCft27slot05","barrelCft27slot14"]
-NewlyNoisy_FEBs = ["barrelCft02slot14","barrelCft01slot14","barrelCft07slot09","barrelCft07slot11","barrelCft06slot14"]
-NoisyRegionsInOuterWheel_FEBs = ["endcapCft21slot04","endcapCft21slot02","endcapCft02slot04","endcapCft02slot02","endcapCft09slot02","endcapCft09slot03","endcapAft21slot04","endcapAft21slot02","endcapAft21slot03"]
-NotNoisyRegionForComparison_FEBs = ["endcapAft02slot04"]
-
-
-
-###### LArNoiseCorrelationMon Configuration ###############
-from LArMonTools.LArMonToolsConf import LArNoiseCorrelationMon
-theLArNoiseCorrelationMon = LArNoiseCorrelationMon(name="LArNoiseCorrelationMon",
-                             LArDigitContainerKey  = LArMonFlags.LArDigitKey(),
-                             IsOnline              = OnlineMode,
-                             IgnoreBadChannels     = True,
-                             LArBadChannelMask     = theLArBadChannelsMasker,
-                             ProcessNEvents        = EventBlockSize,
-                             TriggerChain          = "HLT_noalg_zb_L1ZB, HLT_noalg_cosmiccalo_L1RD1_EMPTY",
-                             TrigDecisionTool      = "Trig::TrigDecisionTool/TrigDecisionTool",
-                             FEBsToMonitor         = NotNoisyRegionForComparison_FEBs+NoisyRegionsInOuterWheel_FEBs+NewlyNoisy_FEBs+MiniNoiseBurstFlagging_FEBs,
-                             IsCalibrationRun      = False
-                             )
-
-from AthenaCommon.BeamFlags import jobproperties
-if jobproperties.Global.DataSource.get_Value() == 'data':
-    theLArNoiseCorrelationMon.LArPedestalKey='Pedestal'
-else:
-    theLArNoiseCorrelationMon.LArPedestalKey='LArPedestal'
-                
-
-ToolSvc += theLArNoiseCorrelationMon
-LArMon.AthenaMonTools+=[ theLArNoiseCorrelationMon ] 
-
-
diff --git a/LArCalorimeter/LArMonTools/src/LArNoiseCorrelationMon.cxx b/LArCalorimeter/LArMonTools/src/LArNoiseCorrelationMon.cxx
deleted file mode 100755
index da639e8c1f7f7d2179c23e8e06a2db0fa7373d27..0000000000000000000000000000000000000000
--- a/LArCalorimeter/LArMonTools/src/LArNoiseCorrelationMon.cxx
+++ /dev/null
@@ -1,478 +0,0 @@
-/*
-  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
-*/
-
-
-// ********************************************************************
-// NAME:     LArNoiseCorrelationMon.cxx
-// PACKAGE:  LArMonTools
-//
-// AUTHOR:   Margherita Spalla (margherita.spalla@cern.ch)
-//           Based on structure of LArDigitMon by Helary Louis (helary@lapp.in2p3.fr)
-// 
-// Computes and plots the correlation between single channels to monitor coherent noise. 
-// The correlation is computed as: 
-//    corr(i,j) = Cov(i,j)/sqrt(Var(i)*Var(j)) where 'Cov(i,j)' is the sample covariance of channels  i and j and 'Var(i)' is the sample variance of channel i.
-//    Variance and covariance are computed summing over all samples and all events for each channel: Cov(i,j)=[sum(x_i*x_j)-N*mean_i*mean_j]/(N-1) , where x_i is the single sample minus the pedestal.
-//
-// Correlation histograms are computed per FEB. The FEBs to be monitored are set in the JO.
-//
-// Available parameters in the jo file:
-//   1) List of FEBs to be monitored: should be passed as a list of strings of the form 'BarrelCFT00Slot02', case insensitive (corresponding to type  LARONLINEID defined in the package atlas/LArCalorimeter/LArMonTools/LArMonTools/LArOnlineIDStrHelper.h). If the list is empty, all FEBs are monitored.
-//   2) control PublishAllFebsOnline: if it is set to true, switched off the monitoring in case the FEB list (1) is empty and the algorithm is running online.
-//   3) list of triggers to be used ('TriggerChain'): to be passed as a single string "trigger_chain_1, trigger_chain_2". The default is "HLT_noalg_zb_L1ZB, HLT_noalg_cosmiccalo_L1RD1_EMPTY", for the latter, only events in the abort gap are used, selection done by hand.
-//   4) control IsCalibrationRun: to be set to true when running on calibration, it switches off the trigger selection.
-//
-// ********************************************************************
-
-//Histograms
-#include "GaudiKernel/ITHistSvc.h"
-#include "LWHists/TProfile_LW.h"
-#include "LWHists/TH2F_LW.h"
-
-//STL:
-#include <sstream>
-#include <iomanip>
-#include <cmath>
-#include <vector>
-#include <algorithm>
-
-//LAr infos:
-#include "Identifier/HWIdentifier.h"
-#include "LArMonTools/LArOnlineIDStrHelper.h"
-#include "LArTools/LArCablingService.h"
-#include "LArIdentifier/LArOnlineID.h"
-#include "LArRawEvent/LArDigit.h"
-#include "LArRawEvent/LArDigitContainer.h"
-#include "LArRecEvent/LArNoisyROSummary.h"
-#include "TrigDecisionTool/TrigDecisionTool.h"
-
-//Events infos:
-#include "xAODEventInfo/EventInfo.h"
-
-//for looping on FEBs
-#include "LArRawEvent/LArFebHeaderContainer.h"
-
-//Header:
-#include "LArMonTools/LArNoiseCorrelationMon.h"
-
-
-// BCIDs of the abort gap
-const int ABORT_GAP_START = 3446;
-const int ABORT_GAP_END   = 3563;
-
-
-
-
-/*---------------------------------------------------------*/
-LArNoiseCorrelationMon::LArNoiseCorrelationMon(const std::string& type, 
-			 const std::string& name,
-			 const IInterface* parent)
-  : ManagedMonitorToolBase(type, name, parent), 
-    m_strHelper(nullptr),
-    m_LArOnlineIDHelper(nullptr),
-    m_badChannelMask("BadLArRawChannelMask")//,
-{
-  /** FEBs to be monitored. If empty, all FEBs will be monitored*/
-  std::vector<std::string> empty_vector(0);
-  declareProperty("FEBsToMonitor",m_FEBsToMonitor=empty_vector);
-	
-  /** If false, blocks the histogram booking in case it's running online and the 'm_FEBsToMonitor' list is empty. i.e. prevents the algorithm from publishing one histogram per FEB for all FEBs in online environnement */
-  declareProperty("PublishAllFebsOnline",m_publishAllFebsOnline=true);
-
-  /** To be set to true when running on calibration run. It swithces off trigger selection*/
-  declareProperty("IsCalibrationRun",m_isCalibrationRun=false);
-
-   /**bool use to mask the bad channels*/
-  declareProperty("IgnoreBadChannels", m_ignoreKnownBadChannels=false);
-  declareProperty("LArBadChannelMask",m_badChannelMask);
-  declareProperty("LArPedestalKey", m_larPedestalKey="Pedestal");
-  declareProperty("LArDigitContainerKey", m_LArDigitContainerKey = "FREE");
-  declareProperty("IsOnline",            m_IsOnline=false);
-}
-
-/*---------------------------------------------------------*/
-LArNoiseCorrelationMon::~LArNoiseCorrelationMon()
-{
-}
-
-StatusCode 
-LArNoiseCorrelationMon::finalize()
-{
-  ATH_MSG_INFO( "finalHists LArNoiseCorrelationMon" );
-
-  /** delete local histograms. */
-  if(m_IsOnline)
-    {
-      for (auto const& feb_entry : m_FEBhistograms)
-	{
-	  m_histos=feb_entry.second;
-	  if(m_histos.second.first)
-	    {
-	      LWHist::safeDelete(m_histos.second.first);
-	      m_histos.second.first=nullptr;
-	    }
-	  if(m_histos.second.second)
-	    {
-	      LWHist::safeDelete(m_histos.second.second);
-	      m_histos.second.second=nullptr;
-	    }
-	}
-    }
-  return StatusCode::SUCCESS;
- 
-}
-
-/*---------------------------------------------------------*/
-StatusCode 
-LArNoiseCorrelationMon::initialize()
-{
-  
-  ATH_MSG_INFO( "Initialize LArNoiseCorrelationMon" );
-  
-  StatusCode sc;
-  
-  /** Get LAr Online Id Helper*/
-  ATH_CHECK(detStore()->retrieve( m_LArOnlineIDHelper, "LArOnlineID" ));
-
-    
-  /** Get LAr Calbling Service*/
-  ATH_CHECK(m_LArCablingService.retrieve());
-
-  
-  /** Get bad-channel mask (only if jO IgnoreBadChannels is true)*/
-  if (m_ignoreKnownBadChannels) {
-    ATH_CHECK(m_badChannelMask.retrieve());
-  }
-  
-  /** Retrieve pedestals container*/
-  sc =  detStore()->regHandle(m_larPedestal,m_larPedestalKey);
-  if (sc.isFailure()) {
-    ATH_MSG_ERROR( "could not register handle for pedestal " );
-    return StatusCode::FAILURE;
-  }
-    
-
-  /** get the trigger list from the 'm_triggerChainProp'*/
-  m_triggers.clear();
-  if(m_isCalibrationRun) {
-    ATH_MSG_INFO( "Running as 'calibration run'. No trigger selection will be applied.");
-  }
-  else {
-    ATH_MSG_DEBUG( "Parsing trigger chain list" );
-    sc=ManagedMonitorToolBase::parseList(m_triggerChainProp, m_triggers);
-    if(sc.isFailure()) {
-      ATH_MSG_ERROR( "Error parsing the trigger chain list, exiting." );
-      return StatusCode::FAILURE;
-    }
-  }
-
-  return ManagedMonitorToolBase::initialize();
-}
-
-/*---------------------------------------------------------*/
-StatusCode 
-LArNoiseCorrelationMon::bookHistograms()
-{
-    /** lar noise correlation */
-    Nchan=128;
-    chan_low=-0.5;
-    chan_up=127.5;
-
-    MonGroup GroupEMBA( this, "/LAr/NoiseCorrelation/EMBA", run, ATTRIB_MANAGED );
-    MonGroup GroupEMBC( this, "/LAr/NoiseCorrelation/EMBC", run, ATTRIB_MANAGED );
-    MonGroup GroupEMECA( this, "/LAr/NoiseCorrelation/EMECA", run, ATTRIB_MANAGED );
-    MonGroup GroupEMECC( this, "/LAr/NoiseCorrelation/EMECC", run, ATTRIB_MANAGED );
-    MonGroup GroupHECA( this, "/LAr/NoiseCorrelation/HECA", run, ATTRIB_MANAGED );
-    MonGroup GroupHECC( this, "/LAr/NoiseCorrelation/HECC", run, ATTRIB_MANAGED );
-    MonGroup GroupFCALA( this, "/LAr/NoiseCorrelation/FCALA", run, ATTRIB_MANAGED );
-    MonGroup GroupFCALC( this, "/LAr/NoiseCorrelation/FCALC", run, ATTRIB_MANAGED );
-
-    /**declare strings for histograms title*/
-    hist_name = "NoiseCorr_"; 
-    hist_title = "LAr Noise Correlation";
-    m_strHelper = new LArOnlineIDStrHelper(m_LArOnlineIDHelper);
-    m_strHelper->setDefaultNameType(LArOnlineIDStrHelper::LARONLINEID);
-
-    /** Check which (if any) FEBs we want to monitor*/ 
-    if(m_FEBsToMonitor.size()==0) {
-      if(!m_publishAllFebsOnline && m_IsOnline) {
-	ATH_MSG_INFO("'m_publishAllFebsOnline' set to false: cannot publish all FEBs in online run. Do nothing.");
-	return StatusCode::SUCCESS;
-      }
-      bookAllFEBs(GroupEMBA,GroupEMBC,GroupEMECA,GroupEMECC,GroupHECA,GroupHECC,GroupFCALA,GroupFCALC);
-    }
-    else bookSelectedFEBs(GroupEMBA,GroupEMBC,GroupEMECA,GroupEMECC,GroupHECA,GroupHECC,GroupFCALA,GroupFCALC);
-  
-  return StatusCode::SUCCESS;
-}
-
-
-/*---------------------------------------------------------*/
-StatusCode 
-LArNoiseCorrelationMon::fillHistograms()
-{
-  /** if publishing all FEBs has been forbidden and m_FEBsToMonitor is empty, then no histogram will be published anyway: no need to loop over channels */
-  if(!m_publishAllFebsOnline && m_IsOnline && m_FEBsToMonitor.size()==0) {
-      ATH_MSG_DEBUG("'m_publishAllFebsOnline' set to false and empty FEB list in online run. No FEB will be monitored.");
-      return StatusCode::SUCCESS;
-    }
-
-  ATH_MSG_DEBUG("in fillHists()" );
-    
-
-  /**EventID is a part of EventInfo, search event informations:*/
-  const xAOD::EventInfo* thisEvent;
-  ATH_CHECK(evtStore()->retrieve(thisEvent));
-  
-  m_evtId = thisEvent->eventNumber();
-  ATH_MSG_DEBUG("Event nb " << m_evtId );  
-
-  /** check trigger */
-  bool passTrig = m_isCalibrationRun;
-  if(!m_isCalibrationRun) { 
-    bool passBCID;
-    if(!m_trigDecTool.empty()) {
-      for(auto trig_chain : m_triggers) {
-	passBCID = ((trig_chain == "HLT_noalg_cosmiccalo_L1RD1_EMPTY")?(thisEvent->bcid() >= ABORT_GAP_START && thisEvent->bcid() <= ABORT_GAP_END):true);
-	passTrig=(passTrig || (passBCID && m_trigDecTool->isPassed(trig_chain)));
-      }
-    }
-    if (!passTrig) {
-      ATH_MSG_DEBUG ( " Failed trigger selection " );
-      return StatusCode::SUCCESS;
-    }
-    else {
-      ATH_MSG_DEBUG ( " Pass trigger selection " );
-    }
-  }
-
-
-
-  /** retrieve LArDigitContainer*/
-  const LArDigitContainer* pLArDigitContainer=nullptr;
-  ATH_CHECK(evtStore()->retrieve(pLArDigitContainer, m_LArDigitContainerKey));
-  
-  
-  /** Define iterators to loop over Digits containers*/
-  LArDigitContainer::const_iterator itDig = pLArDigitContainer->begin(); 
-  LArDigitContainer::const_iterator itDig_2;
-  LArDigitContainer::const_iterator itDig_e= pLArDigitContainer->end(); 
-  
-  /** Loop over digits*/
-  for ( ; itDig!=itDig_e;++itDig) {
-    const LArDigit* pLArDigit = *itDig;
-    
-    /** Retrieve pedestals */
-    HWIdentifier id = pLArDigit->hardwareID();
-    CaloGain::CaloGain gain = pLArDigit->gain();
-    float pedestal = m_larPedestal->pedestal(id,gain);
-    
-    if(!isGoodChannel(id,pedestal))
-	continue;
-    
-    /** Retrieve samples*/
-    const std::vector<short>* digito = &pLArDigit->samples();
-    
-    /** Retrieve once, all the cell info:*/
-    m_febID = m_LArOnlineIDHelper->feb_Id(id);
-    m_ch1 = m_LArOnlineIDHelper->channel(id);
-
-    try {
-      m_histos=m_FEBhistograms.at(m_febID);
-    }
-    catch (const std::out_of_range& oor) {
-	continue;
-    }
-
-    /** Second loop over digit */
-    bool av_set=false;
-    for(itDig_2 = itDig; itDig_2!=itDig_e;++itDig_2)
-      {
-	const LArDigit* pLArDigit2 = *itDig_2;
-	HWIdentifier id2 = pLArDigit2->hardwareID();
-	if(m_LArOnlineIDHelper->feb_Id(id2)!=m_febID) continue;
-
-	/** get the pedestal */
-	CaloGain::CaloGain gain2 = pLArDigit2->gain();
-	float pedestal2 = m_larPedestal->pedestal(id2,gain2);
-
-	if(!isGoodChannel(id2,pedestal2))  continue;
-
-	/** get the channel number */
-	m_ch2 = m_LArOnlineIDHelper->channel(id2);
-
-	/** get the samples */
-	const std::vector<short>* digito2 = &pLArDigit2->samples();
-	std::vector<short>::const_iterator iterSam2= digito2->begin();
-	std::vector<short>::const_iterator iterSam= digito->begin();
-
-	double part_sum=0;
-	int Nsam=pLArDigit->nsamples();
-	if(pLArDigit2->nsamples()!=Nsam)
-	  {
-	    ATH_MSG_WARNING( Form("Different number of samples between channels %d vs %d: skipping these two",Nsam,pLArDigit2->nsamples()) );
-	    continue;
-	  }
-
-	/** Loop over the samples and compute average and sum of squares*/
-	for(int i=0;i<Nsam;i++,iterSam++,iterSam2++)
-	  {
-	    if(!av_set) { /** fill the mean only once per ch1. This code is here to avoid one additional loop over samples before the second loop. */
-	      m_histos.second.second->Fill(m_ch1,(*iterSam-pedestal));
-	    }
-	    /** now compute sum of squares */
-	    part_sum+=((*iterSam-pedestal)*(*iterSam2-pedestal2));
-	  }
-	av_set=true; /** now the average is set and I won't do this again in next ch2 loop*/
-	m_histos.second.first->Fill(m_ch1,m_ch2,part_sum);
-	m_histos.second.first->Fill(m_ch2,m_ch1,part_sum);
-      }/** End of second loop on LArDigit*/    
-  }/** End of loop on LArDigit*/
- 
-
-  /** compute correlation and update the published plot once per LB */
-  if(endOfLumiBlockFlag() || endOfEventsBlockFlag())
-    {
-      double mean1,mean2;
-      double sumVar1,sumVar2;
-      double N;
-      double cor;
-      for (auto const& feb_entry : m_FEBhistograms)
-	{
-	  m_histos=feb_entry.second;
-	  for(int i=1;i<=Nchan;i++)
-	    {
-	      mean1=m_histos.second.second->GetBinContent(i);
-	      sumVar1=m_histos.second.first->GetBinContent(i,i);
-	      N=m_histos.second.second->GetBinEntries(i);
-	      if(N==0) 
-		{
-		  ATH_MSG_DEBUG( "Bin " << i << " has 0 entries" );
-		  continue;
-		}
-	      for(int j=i+1;j<=Nchan;j++)
-		{
-		  mean2=m_histos.second.second->GetBinContent(j);
-		  sumVar2=m_histos.second.first->GetBinContent(j,j);
-		  if((sumVar1-N*mean1*mean1)*(sumVar2-N*mean2*mean2)==0) {
-		    ATH_MSG_DEBUG( "sigma_i*sigma_j is zero for bin (" << i << "," << j << "). Correlation cannot be computed." );
-		    continue;
-		  }
-		  cor=(m_histos.second.first->GetBinContent(i,j)-N*mean1*mean2)/TMath::Sqrt((sumVar1-N*mean1*mean1)*(sumVar2-N*mean2*mean2));
-		  m_histos.first->SetBinContent(i,j,cor);
-		  m_histos.first->SetBinContent(j,i,cor);
-		}
-	    }
-	}
-    }
- 
-  return StatusCode::SUCCESS;
-}
-
-/*---------------------------------------------------------*/
-StatusCode LArNoiseCorrelationMon::procHistograms()
-{
-  if(endOfRunFlag()) 
-    {
-      if(m_IsOnline)
-	{
-	  for (auto const& feb_entry : m_FEBhistograms)
-	    {
-	      m_histos=feb_entry.second;
-	      if(m_histos.second.first) m_histos.second.first->Reset(); 
-	      if(m_histos.second.second) m_histos.second.second->Reset(); 
-	    }
-	}
-    }
-  return StatusCode::SUCCESS;
-}
-
-
-/*---------------------------------------------------------*/
-/** check if channel is ok for monitoring */
- bool LArNoiseCorrelationMon::isGoodChannel(const HWIdentifier ID,const float ped) const
- {
-    /** Remove problematic channels*/
-   if (m_ignoreKnownBadChannels && m_badChannelMask->cellShouldBeMasked(ID))
-     return false;
-
-    /**skip cells with no pedestals reference in db.*/
-    if(ped <= (1.0+LArElecCalib::ERRORCODE))
-      return false;
-    
-    /**skip disconnected channels:*/
-    if(!m_LArCablingService->isOnlineConnected(ID))
-      return false;
-
-    return true;
- }
-
-
-/*---------------------------------------------------------*/
-/**Loops on selected FEBS to book and define histograms.*/
-void LArNoiseCorrelationMon::bookSelectedFEBs(MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC)
-{
-  ATH_MSG_INFO( "Booking selected FEBs: " << m_FEBsToMonitor.size() << " provided." );
-  std::string aFEB; /**aFEB is the feb to monitor*/
-  HWIdentifier febid;
-  for(uint feb_i=0;feb_i<m_FEBsToMonitor.size();feb_i++) {
-    aFEB=m_FEBsToMonitor[feb_i];
-    febid=m_strHelper->feb_id(aFEB);
-    if(!febid.is_valid()) {
-      ATH_MSG_WARNING( "FEB id " << aFEB << " not valid. It will not be monitored." );
-      continue;
-    }
-    bookThisFEB(febid,grEMBA,grEMBC,grEMECA,grEMECC,grHECA,grHECC,grFCALA,grFCALC);
-  }
-}
-
-
-/*---------------------------------------------------------*/
-/**Loops on all FEBS to book and define histograms.*/
-void LArNoiseCorrelationMon::bookAllFEBs(MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC)
-{
-  ATH_MSG_INFO( "No selected FEBs provided: booking all FEBs.");
-  
-  /** loop on FEBs to init histograms */
-  std::vector<HWIdentifier>::const_iterator feb_it = m_LArOnlineIDHelper->feb_begin();
-  std::vector<HWIdentifier>::const_iterator feb_it_e = m_LArOnlineIDHelper->feb_end();
-  for ( ; feb_it!=feb_it_e;++feb_it) {
-    bookThisFEB((*feb_it),grEMBA,grEMBC,grEMECA,grEMECC,grHECA,grHECC,grFCALA,grFCALC);
-  }
-}
-
-/*---------------------------------------------------------*/
-/**Book and defines histogramms for a given FEB.*/
-void LArNoiseCorrelationMon::bookThisFEB(HWIdentifier id,MonGroup& grEMBA,MonGroup& grEMBC,MonGroup& grEMECA,MonGroup& grEMECC,MonGroup& grHECA,MonGroup& grHECC,MonGroup& grFCALA,MonGroup& grFCALC)
-{
-  std::string this_name=m_strHelper->feb_str(id);
-  TH2F_LW* h_corr = TH2F_LW::create((hist_name+this_name).c_str(), hist_title.c_str(),Nchan,chan_low,chan_up,Nchan,chan_low,chan_up);
-  TH2F_LW* h_TMP_sums = TH2F_LW::create((hist_name+this_name+"_TMP_sum").c_str(),(hist_title+" TMP sum").c_str(),Nchan,chan_low,chan_up,Nchan,chan_low,chan_up);
-  TProfile_LW* h_av = TProfile_LW::create((hist_name+this_name+"_TMP_av").c_str(),(hist_title+" TMP av").c_str(),Nchan,chan_low,chan_up,"s");
-  m_FEBhistograms[id]=std::make_pair(h_corr,std::make_pair(h_TMP_sums,h_av));
-
-  if(m_LArOnlineIDHelper->isEMBchannel(id)) {
-    if(m_LArOnlineIDHelper->pos_neg(id)==1) grEMBA.regHist(h_corr).ignore();
-    else grEMBC.regHist(h_corr).ignore();
-  }
-  else
-    if(m_LArOnlineIDHelper->isEMECchannel(id)) {
-      if(m_LArOnlineIDHelper->pos_neg(id)==1) grEMECA.regHist(h_corr).ignore();
-      else grEMECC.regHist(h_corr).ignore();
-    }
-    else
-      if(m_LArOnlineIDHelper->isHECchannel(id)) {
-	if(m_LArOnlineIDHelper->pos_neg(id)==1) grHECA.regHist(h_corr).ignore();
-	else grHECC.regHist(h_corr).ignore();
-      }
-      else
-	if(m_LArOnlineIDHelper->isFCALchannel(id)) {
-	  if(m_LArOnlineIDHelper->pos_neg(id)==1) grFCALA.regHist(h_corr).ignore();
-	  else grFCALC.regHist(h_corr).ignore();
-	}
-}
-
-
-
-
diff --git a/LArCalorimeter/LArMonTools/src/components/LArMonTools_entries.cxx b/LArCalorimeter/LArMonTools/src/components/LArMonTools_entries.cxx
index 4b37f1e7cb36a575f3dfe4fd913823902e145952..99b2388f95aae1e38897ded9fd0cb9aba26f317b 100755
--- a/LArCalorimeter/LArMonTools/src/components/LArMonTools_entries.cxx
+++ b/LArCalorimeter/LArMonTools/src/components/LArMonTools_entries.cxx
@@ -8,7 +8,6 @@
 #include "LArMonTools/LArAffectedRegions.h"
 #include "LArMonTools/LArHVCorrectionMonTool.h"
 #include "LArMonTools/LArNoisyROMon.h"
-#include "LArMonTools/LArNoiseCorrelationMon.h"
 
 #include "GaudiKernel/DeclareFactoryEntries.h"
 
@@ -18,7 +17,6 @@ DECLARE_TOOL_FACTORY(LArCollisionTimeMonTool)
   DECLARE_TOOL_FACTORY(LArCosmicsMonTool)
 DECLARE_TOOL_FACTORY(LArCoverage)
 DECLARE_TOOL_FACTORY(LArDigitMon)
-DECLARE_TOOL_FACTORY(LArNoiseCorrelationMon)
 DECLARE_TOOL_FACTORY(LArRODMonTool)
 DECLARE_TOOL_FACTORY(LArAffectedRegions)
 DECLARE_TOOL_FACTORY(LArHVCorrectionMonTool)
@@ -32,7 +30,6 @@ DECLARE_FACTORY_ENTRIES(LArMonTools) {
   DECLARE_ALGTOOL(LArCosmicsMonTool)
   DECLARE_ALGTOOL(LArCoverage)
   DECLARE_ALGTOOL(LArDigitMon)
-  DECLARE_ALGTOOL(LArNoiseCorrelationMon)
   DECLARE_ALGTOOL(LArRODMonTool)
   DECLARE_ALGTOOL(LArAffectedRegions)
   DECLARE_ALGTOOL(LArHVCorrectionMonTool)