如何设置监测断面和采样点?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置监测断面和采样点?相关的知识,希望对你有一定的参考价值。

1、监测断面设置:河流监测断面设置;湖泊(水库)监测断面设置。

2、采样点的设置

背景值监测点的设置:设在污染区外围不受或少受污染的地方。在垂直于地下水流方向的上方设置。

监测井的布设:点状污染区(渗坑、渗井和堆渣区的污染物在含水层渗透小的地区形成的),监测井设在距污染源最近的地方。块状污染区(污灌区、污养区及缺乏卫生设施的居民区),监测井设在地下水流向的平行和垂直方向上。

条(带)状污染区(渗坑、渗井和堆渣区的污染物在含水层渗透大地区及沿河、渠排放的工业废水和生活污水),宜用网格布点法设置监测井。监测井在液面下0.3~0.5m处采样。



扩展资料

布设要求:具有代表性,保证采集到的样品以及测得数据与参数能准确表征或近似表征环境质量和条件;在监测区域内污染具有一定的均匀性;便于样品采集。

在对调查研究结果和有关资料进行综合分析的基础上,监测断面的布设应有代表性,即能较真实、全面地反映水质及污染物的空间分布和变化规律;根据监测目的和监测项目,并考虑人力、物力等因素确定监测断面和采样点。

有大量废水排入河流的主要居民区、工业区的上游和下游。较大支流汇合口上游和汇合后与干流充分混合处,入海河流的河口处,受潮汐影响的河段和严重水土流失区。湖泊、水库、河口的主要入口和出口。国际河流出入国境线的出入口处。

饮用水源区、水资源集中的水域、主要风景游览区、水上娱乐区及重大水力设施所在地等功能区。断面位置应避开死水区及回水区,尽量选择河段顺直、河床稳定、水流平稳、无急流浅滩处。应尽可能与水文测量断面重合;并要求交通方便,有明显岸边标志。

参考资料来源:百度百科-采样点

参考资料来源:百度百科-水质监测

参考技术A 首先,选定较规则的一个河段,为梯形状最好,河面宽度为上地,河床底部为下地,测出水深度,就可以计算出断面面积(梯形面积公式S=(a+b)/2×h)。然后,再找一片纸,观察在一段距离内流动的时间,即可算出他的流速。这样就可算出流量了。

以河流为例:
(1)对照断面:一般河段只设一个对照断面,设在进入城市、工业区废水排放口的上游,即基本不受本地区污染影响之处,反映进入本地区河流水质的初始情况。
(2)净化断面(削减断面):污染状况明显减缓的断面,这种断面常设在城市或工业区最后一个排污口下游1500m以外的河段上。
(3)控制断面:评价、监测河段两岸污染源对水体水质影响而设置的控制断面。应设在:a.排污区下游较大支流汇入前的河口处;b.排污口下游 500-1000m 处;c.湖泊或水库的出入河口及重要河流入海口处。d.对特殊要求的地区,如风景游览区、自然保护区、与水源有关的地方病发病区、严重水土流失区等的河段上也应设置控制断面。
(4)背景断面:设在基本上未受人类活动影响的河段。采样垂线设置:河宽<50m ,一条中泓垂线;河宽50—100m,左、右各一条;河宽100—1000,左、中、右各一条;河宽>1500m,5条以上等距离垂线。采样位置与数目:水深≤5m,一个样,水面下0.3—0.5m;水深5—10m,二个样,水面下0.3—0.5m处和河底以上0.5m处;水深10—50m,三个样,水面下0.3—0.5m处和河底以上0.5m处,1/2水深处;水深>50m,酌情增加采样点数。
参考技术B 断面垂线设置

水面宽度(m) 垂线数量 说 明
≤50 一条(中泓线) 1、断面上垂线的布设应避开岸边污染带。有必要对岸边污染带进行监测时,可在污染带内酌情增设垂线。
2、对无排污河段并有充分数据证明断面上水质均匀时,可只设中泓一条垂线。

50~100 二条(左、右近岸有明显水流处)
>100 三条(左、中、右)

垂线上采样点的设置
水深(m) 采 样 点 数 量 说 明
≤5 一点(水面下0.5m处) 1、水深不足1m时,设在1/2水深处。
2、河流封冻时,在冰下0.5m处。

3、若有充分数据证明垂线上水质均匀,可酌情减少采样点数目。

5~10 二点(水面下0.5m,河底上0.5m)
>10 三点(水面下0.5m、1/2水深、河底上0.5m)
参考技术C 断面法
对于江、河水系或某一河段,要求设置三种断面:
a对照断面、b控制断面、c削减断面。
对照断面设置目的:
了解流入某一区域(监测段)前的水
质状况,提供这一水系区域本底值。
设置方法:(位于该区域所有污染源上游处,排污口上游100~500m处)
a. 设在河流进入城市或工业区以前的地方
b. 避开各种废水、污水流入或回流处
断面数目:一个河段区域一个对照断面。(有主要支流时可酌情增加。)
控制断面设置目的:监测污染源对水质影响。
设置方法:
(主要排污口下游较充分混合的断面下游)根据主要污染物的迁移、转化规律,河水流量和河道水力学特征确定,在排污口下游500—1000m处。因为在排污口下游500m横断面上的1/2宽度处重金属浓度一般出现高峰值。
对特殊要求的地区,如水产资源区、风景游览区、自然保护区、与水源有关的地方病发病区、严重水土流失区及地球化学异常区等的河段上也应设置控制断面。
断面数目:多个。
根据城市的工业布局和排污口分布情况而定削减断面设置目的:了解经稀释扩散和自净后,河流水质情况。
设置方法:最后一个排污口下游1500m处。(左中右浓度差较小的断面。小河流视具体情况)
断面数目: 1个。
背景断面:③ 湖泊、水库监测断面的设置
首先,判断是单一水体还是复杂水体:
考虑汇入的河流数量,水体的径流量、季节变化及动态变化,沿岸污染源分布及污染物扩散与自净规律、生态环境特点等。
然后,按照监测断面的设置原则确定监测断面的位置:
a.在进出湖泊、水库的河流汇合处分别设置监测断面;
b.以各功能区为中心,在其辐射线上设置弧形监测断面;
c.在湖库中心,深、浅水区,滞流区,不同鱼类的洄游产卵区,水生生物经济区等设置监测断面。
湖、库监测断面设置示意图
④采样点位的确定小结:三断面法采样部位的确定
河流上 ——选取采样断面;
采样断面上 ——选取采样垂线;
采样垂线上 ——选取采样点。
(3)采样时间和采样频率的确定所采水样要具代表性,能反映出水质在时间和空间上的变化规律。一般原则:
①对于较大水系干流和中、小河流全年采样不少于6次;采样时间为丰水期、枯水期和平水期,每期采样两次。流经城市工业区、污染较重的河流、游览水域、饮用水源地全年采样不少于12次;采样时间为每月一次或视具体情况而定。底泥每年在枯水期采样1次。
②潮汐河流全年在丰、枯、平水期采样,每期采样两天,分别在大潮期和小潮期进行,每次应采集当天涨、退潮水样分别测定。
③排污渠每年采样不少于3次。
④设有专门监测站的湖、库,每月采样1次,全年不少于12次。其他湖泊、水库全年采样两次,枯、丰水期各一次。有废水排入、污染较重的湖、库,应酌情增加采样次数。
⑤背景断面每年采样1次。
参考技术D 断面法
对于江、河水系或某一河段,要求设置三种断面:

a对照断面、b控制断面、c削减断面。

对照断面

设置目的:了解流入某一区域(监测段)前的水

质状况,提供这一水系区域本底值。

设置方法:(位于该区域所有污染源上游处,排污口上游100~500m处)

a. 设在河流进入城市或工业区以前的地方

b. 避开各种废水、污水流入或回流处

断面数目:一个河段区域一个对照断面。(有主要支流时可酌情增加。)

控制断面

设置目的:监测污染源对水质影响。

设置方法:(主要排污口下游较充分混合的断面下游)根据主要污染物的迁移、转化规律,河水流量和河道水力学特征确定,在排污口下游500—1000m处。因为在排污口下游500m横断面上的1/2宽度处重金属浓度一般出现高峰值。

对特殊要求的地区,如水产资源区、风景游览区、自然保护区、与水源有关的地方病发病区、严重水土流失区及地球化学异常区等的河段上也应设置控制断面。

断面数目:多个。根据城市的工业布局和排污口分布情况而定

削减断面

设置目的:了解经稀释扩散和自净后,河流水质情况。

设置方法:最后一个排污口下游1500m处。(左中右浓度差较小的断面。小河流视具体情况)

断面数目: 1个。
背景断面:

③ 湖泊、水库监测断面的设置

首先,判断是单一水体还是复杂水体:

考虑汇入的河流数量,水体的径流量、季节变化及动态变化,沿岸污染源分布及污染物扩散与自净规律、生态环境特点等。

然后,按照监测断面的设置原则确定监测断面的位置:

a.在进出湖泊、水库的河流汇合处分别设置监测断面;

b.以各功能区为中心,在其辐射线上设置弧形监测断面;

c.在湖库中心,深、浅水区,滞流区,不同鱼类的洄游产卵区,水生生物经济区等设置监测断面。

湖、库监测断面设置示意图

④采样点位的确定

小结:三断面法采样部位的确定

河流上 ——选取采样断面;

采样断面上 ——选取采样垂线;

采样垂线上 ——选取采样点。

(3)采样时间和采样频率的确定

所采水样要具代表性,能反映出水质在时间和空间上的变化规律。

一般原则:

①对于较大水系干流和中、小河流全年采样不少于6次;采样时间为丰水期、枯水期和平水期,每期采样两次。流经城市工业区、污染较重的河流、游览水域、饮用水源地全年采样不少于12次;采样时间为每月一次或视具体情况而定。底泥每年在枯水期采样1次。

②潮汐河流全年在丰、枯、平水期采样,每期采样两天,分别在大潮期和小潮期进行,每次应采集当天涨、退潮水样分别测定。

③排污渠每年采样不少于3次。

④设有专门监测站的湖、库,每月采样1次,全年不少于12次。其他湖泊、水库全年采样两次,枯、丰水期各一次。有废水排入、污染较重的湖、库,应酌情增加采样次数。

⑤背景断面每年采样1次。

修改采样线名称

问题来源:

在Autodesk论坛中,一位朋友提出了这样一个问题:要把路线曲线点、超高点等特征信息在横断面图标题中显示出来,注意是横断面图。

解决方法:

如果直接解决这个问题,貌似不可行,但可以稍稍绕一点路,通过采样线名称来实现——把采样线名称当做横断面图的标题!

这样以来,我们只需修改采样线名称即可!手工修改应该不大现实,我们可以通过简单的代码来实现!

 

代码如下:

注意这只是测试代码,测试前提假定路线有一个采样线编组,如果采样线编组多于一个,代码也只能修改第一个采样线编组中采样线的名称。

超高点、纵断面点的操作类似,代码没有给出,有兴趣的朋友可以自行完成。

 

using System;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.EditorInput;
using Autodesk.Civil.ApplicationServices;
using Autodesk.Civil.DatabaseServices;
using Autodesk.Civil.Settings;

namespace ProfileTools
{
    class RenameSampleline
    {
        Document doc;
        Editor ed;
        CivilDocument civilDoc;
        public RenameSampleline()
        {
            doc = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
            ed = doc.Editor;
            civilDoc = Autodesk.Civil.ApplicationServices.CivilApplication.ActiveDocument;

        }
        public void DoSth()
        {
            PromptEntityOptions opt = new PromptEntityOptions(
                "\\n选择路线");
            opt.AllowNone = true;
            opt.SetRejectMessage("\\n选定的图元必须属于类型:采样线!");
            opt.AddAllowedClass(typeof(Alignment), false);
            PromptEntityResult res = doc.Editor.GetEntity(opt);
            if (res.Status != PromptStatus.OK) return;
            using (Transaction tr = doc.Database.TransactionManager.StartTransaction())
            {
                Alignment al = res.ObjectId.GetObject(OpenMode.ForRead) as Alignment;

                if (al != null)
                {
                    ObjectIdCollection ids = al.GetSampleLineGroupIds();
                    if (ids.Count > 0)
                    {
                        Station[] stas = al.GetStationSet(StationTypes.All);
                        SampleLineGroup slg = ids[0].GetObject(OpenMode.ForRead) as SampleLineGroup;
                        if (slg != null)
                        {
                            ids = slg.GetSampleLineIds();
                            foreach (ObjectId id in ids)
                            {
                                SampleLine sl = id.GetObject(OpenMode.ForWrite) as SampleLine;
                                double sta = sl.Station;
                                
                                sl.Name= GetStaStr(stas, sta);
                            }
                        }
                    }

                }
                tr.Commit();
            }
        }

        private string GetStaStr(Station[] stas, double sta)

        {
            string str = "";
            foreach (Station station in stas)
            {
                if (Math.Abs(station.RawStation - sta) < 0.002)
                {
                    AlignmentGeometryPointStationType types = station.GeometryStationType;

                    switch(types)
                    {
                        case AlignmentGeometryPointStationType.BegOfAlign:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.AlignmentBeginning);
                            break;
                        case AlignmentGeometryPointStationType.EndOfAlign:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.AlignmentEnd);
                            break;
                        case AlignmentGeometryPointStationType.TanTan:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.TangentTangentIntersect);
                            break;
                        case AlignmentGeometryPointStationType.TanCurve:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.TangentCurveIntersect);
                            break;
                        case AlignmentGeometryPointStationType.CurveTan:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.CurveTangentIntersect);
                            break;
                        case AlignmentGeometryPointStationType.CurveCompCurve:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.CompoundCurveCurveIntersect);
                            break;
                        case AlignmentGeometryPointStationType.CurveRevCurve:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.ReverseCurveCurveIntersect);
                            break;
                        case AlignmentGeometryPointStationType.TanSpiral:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.TangentSpiralIntersect);
                            break;
                        case AlignmentGeometryPointStationType.SpiralTan:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.SpiralTangentIntersect);
                            break;
                        case AlignmentGeometryPointStationType.CurveSpiral:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.CurveSpiralIntersect);
                            break;
                        case AlignmentGeometryPointStationType.SpiralCurve:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.SpiralCurveIntersect);
                            break;
                        case AlignmentGeometryPointStationType.SpiralCompSpiral:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.SpiralSpiralIntersect);
                            break;
                        case AlignmentGeometryPointStationType.SpiralRevSpiral:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.AlignmentGeoPointText.GetAlignmentAbbreviation(AbbreviationAlignmentType.ReverseSpiralIntersect);
                            break;
                        case AlignmentGeometryPointStationType.ProfileTanCurve:
                            str = civilDoc.Settings.DrawingSettings.AbbreviationsSettings.Profile.GetProfileAbbreviation(AbbreviationProfileType.BeginVerticalCurve);
                            break;

                    }
                    break;
                }
            }
            if (str=="")
            {
                return sta.ToString("0+000.00");
            }
            return str+"_"+sta.ToString("0+000.00");
        }
    }
}

 

测试结果如下:

这些简写,可以通过修改图形设置进行自定义。

 

以上是关于如何设置监测断面和采样点?的主要内容,如果未能解决你的问题,请参考以下文章

修改采样线名称

采样间隔和采样点大小的关系

二 创建路线

matlab仿真中在哪里设置采样频率?设置采样频率的目的是啥?

采样频率决定一周期内采样点的个数吗

MATLAB中的FFT的采样频率和采样点怎样确定?