private void removeCatchmentFromScenario(Catchment cat)
        {
            var geoData             = Scenario.GeographicData;
            var subCatchmentOutline = geoData.SubCatchmentOutline;

            if (subCatchmentOutline != null)
            {
                bool   haveMatch = false;
                double theCatVal = -99;

                foreach (KeyValuePair <double, object> kvp in subCatchmentOutline.Categories)
                {
                    string scName = (string)kvp.Value;

                    if (scName != cat.Name)
                    {
                        continue;
                    }
                    theCatVal = kvp.Key;
                    haveMatch = true;
                    break;
                }

                if (haveMatch)
                {
                    catDblsToRemove.Add(theCatVal);
                }
            }

            foreach (FunctionalUnitDefinition fudef in Scenario.SystemFunctionalUnitConfiguration.fuDefinitions)
            {
                FunctionalUnit fu = cat.getFunctionalUnit(fudef);
                if (fu is StandardFunctionalUnit)
                {
                    removeUsagesForSFU(cat, (StandardFunctionalUnit)fu);
                }
            }

            Scenario.Network.Remove(cat);
        }