• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于C#.NET的NVH動(dòng)剛度及傳函分析后處理效率提升研究

      2017-05-30 22:39:48蘭斌旋常光寶李書(shū)陽(yáng)梁靜強(qiáng)
      企業(yè)科技與發(fā)展 2017年2期

      蘭斌旋 常光寶 李書(shū)陽(yáng) 梁靜強(qiáng)

      【摘 要】針對(duì)NVH動(dòng)剛度及傳函分析后處理工作重復(fù)操作多、耗費(fèi)時(shí)間過(guò)長(zhǎng)的情況,文章提出了基于C#.NET開(kāi)發(fā)軟件提高后處理效率的解決方案。通過(guò)分析后處理需求,使用C#作為開(kāi)發(fā)語(yǔ)言、visual studio 2012作為開(kāi)發(fā)工具完成軟件開(kāi)發(fā)。通過(guò)測(cè)試,開(kāi)發(fā)的后處理軟件能夠在1 min內(nèi)快速地完成原先需數(shù)小時(shí)的后處理工作。通過(guò)軟件開(kāi)發(fā)可以實(shí)現(xiàn)動(dòng)剛度及傳函分析后處理自動(dòng)化,達(dá)到縮短分析周期和提升工作效率的目的。

      【關(guān)鍵詞】NVH后處理;C#.NET;動(dòng)剛度;噪聲傳函;振動(dòng)傳函

      【中圖分類(lèi)號(hào)】TP311.11 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】1674-0688(2017)02-0100-05

      0 引言

      隨著用戶對(duì)汽車(chē)噪聲、振動(dòng)和舒適性方面的性能要求越來(lái)越高,車(chē)企對(duì)NVH分析的重視度也隨之提高[1-2]。CAE分析流程可以分為3個(gè)階段:前處理、分析計(jì)算、后處理。其中,后處理是對(duì)分析結(jié)算結(jié)果進(jìn)行分析、整理、歸納的過(guò)程。后處理存在很多重復(fù)性勞動(dòng),浪費(fèi)大量時(shí)間,分析效率低下,常占整個(gè)CAE分析工作量比重的20%~40%,甚至更多。計(jì)算結(jié)果通常是一堆海量的數(shù)據(jù),很難直觀地理解數(shù)據(jù)代表的意義,通常需要接觸類(lèi)似Hyperview等后處理軟件進(jìn)行結(jié)果的整理和顯示[3-4]。不少企業(yè)常通過(guò)Hyperworks、ABAQus等CAE軟件平臺(tái)進(jìn)行二次開(kāi)發(fā),實(shí)現(xiàn)分析結(jié)果后處理的自動(dòng)化[5-6]。

      NVH分析屬于CAE分析范疇,但相比較于其他CAE分析,后處理工作量往往要大很多,特別是NVH中的動(dòng)剛度分析和傳函分析。通過(guò)解析分析計(jì)算結(jié)果數(shù)據(jù)結(jié)構(gòu)和后處理需求,本文提出了不借助CAE平臺(tái)二次開(kāi)發(fā),而是基于C#.NET技術(shù)開(kāi)發(fā)軟件來(lái)實(shí)現(xiàn)后處理自動(dòng)化的解決方案。

      1 分析后處理需求分析

      1.1 計(jì)算結(jié)果數(shù)據(jù)結(jié)構(gòu)分析

      動(dòng)剛度及傳函分析經(jīng)過(guò)Radioss、Nastran等計(jì)算軟件計(jì)算后一般得到的是“.pch”格式的數(shù)據(jù)結(jié)果,數(shù)據(jù)可通過(guò)文本編輯器打開(kāi)。頻響類(lèi)分析計(jì)算結(jié)果為各工況下,不同響應(yīng)點(diǎn)在不同頻率激勵(lì)下的響應(yīng)值的集合。圖1為打開(kāi)某個(gè)結(jié)果文件的截圖,通過(guò)分析可以清晰地看到結(jié)果文件的規(guī)律性。

      (1)數(shù)據(jù)按照工況ID和響應(yīng)點(diǎn)ID組合進(jìn)行分組(圖1中第1—1207行為一組數(shù)據(jù))。

      (2)每組數(shù)據(jù)前7行表明了工況ID、響應(yīng)點(diǎn)ID、數(shù)據(jù)類(lèi)型等信息。

      (3)每組數(shù)據(jù)第8行開(kāi)始到結(jié)尾為各頻率下的響應(yīng)值(圖1中第8—1207行為300個(gè)頻率值對(duì)應(yīng)的300組響應(yīng)數(shù)值)。

      (4)輸出的響應(yīng)值類(lèi)型有位移、加速度、速度3種。

      因此,計(jì)算結(jié)果其實(shí)就是在工況、響應(yīng)點(diǎn)、頻率3個(gè)影響因子下的響應(yīng)值集合。

      1.2 分析后處理[7-8]

      動(dòng)剛度分析、振動(dòng)傳函分析、噪聲傳函分析是常見(jiàn)的整車(chē)NVH分析,本文將對(duì)這3種分析后處理做需求分析并實(shí)現(xiàn)軟件設(shè)計(jì)。

      1.2.1 動(dòng)剛度分析

      對(duì)于線性系統(tǒng),用施加在系統(tǒng)上的力除以位移,即得到剛度。剛度是系統(tǒng)的固有特征,與外界施加力和響應(yīng)沒(méi)有關(guān)系,即靜止?fàn)顟B(tài)就存在,所以稱(chēng)之為“靜剛度”。在外力作用下,系統(tǒng)運(yùn)動(dòng)起來(lái),其剛度特性隨著輸入的頻率而發(fā)生變化。此時(shí),剛度是隨著頻率而變化的,它不是一個(gè)固定值,此時(shí)的剛度稱(chēng)為動(dòng)剛度。動(dòng)剛度取決于系統(tǒng)的質(zhì)量、阻尼和靜剛度。

      動(dòng)剛度結(jié)果后處理要求:運(yùn)用1/3倍頻法獲取所有響應(yīng)點(diǎn)的動(dòng)剛度值;輸出所有響應(yīng)點(diǎn)的頻率響應(yīng)曲線。

      1.2.2 振動(dòng)傳函和噪聲傳函分析

      對(duì)于任何一個(gè)系統(tǒng),施加了輸入,就會(huì)得到輸出。輸入常被稱(chēng)為激勵(lì),輸出被稱(chēng)為響應(yīng)。對(duì)于一個(gè)動(dòng)態(tài)結(jié)構(gòu)系統(tǒng)或聲學(xué)系統(tǒng),輸入信號(hào)和輸出信號(hào)都是頻率的函數(shù)。傳遞函數(shù)定義為輸出信號(hào)與輸入信號(hào)的比值,也是頻率的函數(shù),它表征了動(dòng)態(tài)系統(tǒng)的固有特征,即每個(gè)動(dòng)態(tài)系統(tǒng)都存在傳遞函數(shù)。

      振動(dòng)傳遞函數(shù),簡(jiǎn)稱(chēng)VTF,是指車(chē)內(nèi)振動(dòng)響應(yīng)與車(chē)身上受到激勵(lì)力的比值。噪聲傳遞函數(shù),簡(jiǎn)稱(chēng)NTF,是值車(chē)內(nèi)噪聲相應(yīng)與車(chē)身上受激勵(lì)力的比值。聲學(xué)上常用對(duì)數(shù)坐標(biāo)衡量聲壓,以聲壓級(jí)SPL表示:

      SPL=20Log(位移響應(yīng)值×1011/2)dB

      傳函分析結(jié)果后處理要求:所有工況下,各響應(yīng)點(diǎn)在指定頻率范圍內(nèi)的傳函極大值及對(duì)應(yīng)的頻率。所有工況下,各響應(yīng)點(diǎn)的頻率響應(yīng)曲線。其中,振動(dòng)函數(shù)極大值從響應(yīng)點(diǎn)速度值集合中取值;而噪聲傳函極大值從響應(yīng)點(diǎn)位移值集合中取值,且數(shù)值需通過(guò)聲壓級(jí)函數(shù)轉(zhuǎn)換。

      2 主要實(shí)現(xiàn)技術(shù)

      2.1 C#.NET

      C#是一種精確、簡(jiǎn)單、類(lèi)型安全、面向?qū)ο蟮恼Z(yǔ)言,它使企業(yè)程序員得以構(gòu)建廣泛的應(yīng)用程序。C#還憑借以下功能,提供了生成持久系統(tǒng)級(jí)組件的能力[9]。

      .NET框架類(lèi)庫(kù)是一個(gè)由Miscrosoft.NET框架SDK中包含的類(lèi)、接口和值類(lèi)型組成的庫(kù)。該庫(kù)提供對(duì)系統(tǒng)功能的訪問(wèn),并且被設(shè)計(jì)為NET框架應(yīng)用程序、組建和控件的生成基礎(chǔ)。若要使用接口的功能,既可以創(chuàng)建實(shí)現(xiàn)接口的類(lèi),也可以從某個(gè)實(shí)現(xiàn)接口的.NET框架類(lèi)中派生類(lèi)。

      2.2 NPOI

      所謂NPOI是POI項(xiàng)目的.NET版本,可以從網(wǎng)上下載到它的最新版本[10]。NPOI的功能非常強(qiáng)大,不僅能創(chuàng)建Excel文件,而且能更深入地執(zhí)行Excel文件的各種操作[11]。

      3 軟件設(shè)計(jì)

      3.1 框架設(shè)計(jì)

      軟件框架設(shè)計(jì)圖如圖2所示。其中,NVH類(lèi)庫(kù)為軟件開(kāi)發(fā)成功的核心要素。NVH類(lèi)庫(kù)包含了從頻響類(lèi)分析需求中抽象出的點(diǎn)類(lèi)和后處理方法類(lèi)。使用NVH類(lèi)庫(kù)的好處是它能支持通過(guò)B/S模式和C/S模式的軟件系統(tǒng)。不管是Web應(yīng)用程序還是winform應(yīng)用程序,都能夠非常方便地添加NVH類(lèi)庫(kù),通過(guò)類(lèi)庫(kù)提供的函數(shù)接口,即可實(shí)現(xiàn)軟件后處理的功能。在軟件開(kāi)發(fā)設(shè)計(jì)時(shí),還會(huì)經(jīng)常用到一些通用輔助類(lèi)和方法,如數(shù)據(jù)讀取類(lèi)、數(shù)據(jù)轉(zhuǎn)換類(lèi)、Excel操作類(lèi)等。本軟件框架通過(guò)對(duì)通用類(lèi)(Utils)的引用,可將開(kāi)發(fā)過(guò)程中積累的方法快速運(yùn)用到項(xiàng)目中,提升代碼復(fù)用。

      3.2 抽象出NVH類(lèi)

      根據(jù)對(duì)需求分析可知,該類(lèi)計(jì)算結(jié)果后處理過(guò)程大致如圖3所示,后處理的過(guò)程數(shù)據(jù)為各類(lèi)點(diǎn)的數(shù)據(jù)集合,這些數(shù)據(jù)集合可以通過(guò)C#語(yǔ)言抽象出對(duì)應(yīng)的類(lèi),使過(guò)程數(shù)據(jù)結(jié)構(gòu)清晰。

      3.2.1 NVH基礎(chǔ)點(diǎn)類(lèi)(BasicPoint)

      通過(guò)對(duì)計(jì)算文件分析得知計(jì)算結(jié)果可以看成是在工況、響應(yīng)點(diǎn)、頻率影響下的點(diǎn)集合,在此稱(chēng)該類(lèi)點(diǎn)為基礎(chǔ)點(diǎn)。通過(guò)C#類(lèi)將基礎(chǔ)點(diǎn)抽象為BasicPoint類(lèi),代碼如下:

      public class BasicPoint

      {

      public int PointIndex { get; set; }//序號(hào),唯一性,用于識(shí)別點(diǎn)位置

      public string Title { get; set; }//標(biāo)題,對(duì)應(yīng)PCH文件$TITLE內(nèi)容

      public string SubTitle { get; set; }//工況標(biāo)題,對(duì)應(yīng)PCH文件$SUBTITLE內(nèi)容

      public string Label { get; set; }//標(biāo)簽,對(duì)應(yīng)PCH文件$LABEL內(nèi)容

      public string Types { get; set; }//數(shù)值類(lèi)型,包括位移、速度、加速度。

      public string OutPut { get; set; }//輸出類(lèi)型,對(duì)應(yīng)$MAGNITUDE-PHASE OUTPUT行

      public string IncentiveDirection { get; set; }//激勵(lì)方向,對(duì)應(yīng)$LABEL內(nèi)容

      public string IncentivePointId { get; set; }//激勵(lì)點(diǎn)Id,對(duì)應(yīng)$LABEL內(nèi)容

      public string SubId { get; set; }//工況Id,對(duì)應(yīng)$SUBCASE ID內(nèi)容

      public string PointId { get; set; }//響應(yīng)點(diǎn)Id,對(duì)應(yīng)$POINT ID內(nèi)容

      public int Frequency { get; set; }//頻率

      public double MagTransX { get; set; }//實(shí)數(shù)X向(或位移)響應(yīng)值

      public double MagTransY { get; set; }//實(shí)數(shù)Y向響應(yīng)值

      public double MagTransZ { get; set; }//實(shí)數(shù)Z向響應(yīng)值

      }

      3.2.2 頻響計(jì)算結(jié)果類(lèi)(NVHPoint)

      計(jì)算結(jié)果文件是基礎(chǔ)點(diǎn)的集合,因此也相當(dāng)于是BasicPoint類(lèi)的集合。一般結(jié)果文件至少包括位移、速度和加速度3類(lèi)響應(yīng)數(shù)據(jù)之中的一種,現(xiàn)定義NVHPoint類(lèi),該類(lèi)包括了類(lèi)型都為BasicPoint的響應(yīng)點(diǎn)位移值集合、響應(yīng)點(diǎn)速度值集合、響應(yīng)點(diǎn)加速度值集合、單個(gè)響應(yīng)點(diǎn)包含的頻率總數(shù)、加速度響應(yīng)點(diǎn)數(shù)、位移的響應(yīng)點(diǎn)數(shù)、速度的響應(yīng)點(diǎn)數(shù)。通過(guò)轉(zhuǎn)換,一個(gè)計(jì)算結(jié)果文件可以等效于一個(gè)NVHPoint類(lèi)實(shí)體。NVHPoint類(lèi)代碼如下:

      public class NVHPoint

      {

      public BasicPoint[] AccelerationPoints;//響應(yīng)點(diǎn)加速度值集合

      public BasicPoint[] DisplacementsPoints;//響應(yīng)點(diǎn)位移值集合

      public BasicPoint[] VelocityPoints;//響應(yīng)點(diǎn)速度值集合

      public int PointOfFrequency;//單點(diǎn)包含的頻率數(shù)

      public int NumsOfAccelerationPoints;//加速度的響應(yīng)點(diǎn)數(shù)

      public int NumsOfDisplacementsPoints;//位移的響應(yīng)點(diǎn)數(shù)

      public int NumsOfVelocityPoints;//速度的響應(yīng)點(diǎn)數(shù)

      }

      3.2.3 極值點(diǎn)類(lèi)(MaxorMinPoin)

      極大值為某個(gè)工況下,相應(yīng)點(diǎn)在指定頻率區(qū)間內(nèi)最大的響應(yīng)值。該類(lèi)的設(shè)計(jì)主要針對(duì)噪聲傳遞函數(shù)分析和振動(dòng)傳遞函數(shù)分析。MaxorMinPoint類(lèi)代碼如下。

      public class MaxorMinPoint

      {

      public int PointIndex { get; set; }//序號(hào),唯一性,用于識(shí)別點(diǎn)位置

      public string IncentiveDirection { get; set; }//激勵(lì)方向

      public string IncentivePointId { get; set; }//激勵(lì)點(diǎn)Id

      public string SubId { get; set; }//工況Id

      public string PointId { get; set; }//響應(yīng)點(diǎn)Id

      public double MagTransX { get; set; }//X向(或位移)極值

      public double MagTransY { get; set; }//Y向極值

      public double MagTransZ { get; set; }//Z向極值

      public int IndexX { get; set; }//X向(或位移)極值對(duì)應(yīng)頻率

      public int IndexY { get; set; }//Y向極值對(duì)應(yīng)頻率

      public int IndexZ { get; set; }//Z向極值對(duì)應(yīng)頻率

      public int Begin { get; set; }//取極值頻率區(qū)間的開(kāi)始頻率

      public int End { get; set; }//取極值頻率區(qū)間的結(jié)束頻率

      }

      3.2.4 動(dòng)剛度值點(diǎn)類(lèi)(DyPoint)

      該類(lèi)的設(shè)計(jì)主要針對(duì)動(dòng)剛度分析,以便于結(jié)果的輸出。DyPoint類(lèi)代碼如下。

      public class DyPoint

      {

      public string PointId { get; set; }//響應(yīng)點(diǎn)Id

      public double Frequency { get; set; }//頻率

      public double Xvalue { get; set; }//X向動(dòng)剛度值

      public double Yvalue { get; set; }//Y向動(dòng)剛度值

      public double Zvalue { get; set; }//Z向動(dòng)剛度值

      }

      3.3 Npoi實(shí)現(xiàn)數(shù)據(jù)導(dǎo)出

      3.3.1 NPOI定義單元格顏色的方法

      ICellStyle red = hssfworkbook.CreateCellStyle();//創(chuàng)建單元格樣式

      red.FillForegroundColor = HSSFColor.Red.Index;//設(shè)置單元格顏色

      red.FillPattern = FillPattern.SolidForeground;//設(shè)置單元格填充類(lèi)型

      red.DataFormat = HSSFDataFormat.GetBuiltinFormat("0.00");

      NpoiUtil.GetSafeCell(1, 1).CellStyle = red;

      3.3.2 輸出NTF結(jié)果的實(shí)現(xiàn)

      FileStream file = new FileStream(NtfPath,F(xiàn)ileMode.Open,F(xiàn)ileAccess.Read);

      HSSFWorkbook hf= new HSSFWorkbook(file);

      ISheet sheet = hf.GetSheetAt(0); //NTF模版的讀取

      IRow row = sheet.GetRow(1);

      double NtfValue = 20*Math.Log10(MaxOutput[i].MagTransX *100000000000 / 2);

      NpoiUtil.GetSafeCell(row,1).SetCellValue(NtfValue); // NTF結(jié)果填入特定單元格

      sheet.ForceFormulaRecalculation = true;

      NpoiUtil.WriteToFile(NewPath,hf); //保存NTF結(jié)果文件

      3.4 搭建Web測(cè)試環(huán)境

      當(dāng)NVH類(lèi)庫(kù)項(xiàng)目完成開(kāi)發(fā)后,可通過(guò)Web程序或者Winform程序調(diào)用NVH類(lèi)庫(kù)來(lái)實(shí)現(xiàn)相關(guān)分析的后處理。為了便于測(cè)試,本文通過(guò)搭建一個(gè)Web程序進(jìn)行測(cè)試。

      4 軟件后處理測(cè)試

      測(cè)試軟件已經(jīng)實(shí)現(xiàn)了NTF(噪聲傳函)分析、VTF(振動(dòng)傳函)分析、動(dòng)剛度分析后處理,考慮篇幅,下文僅通過(guò)NTF做舉例。

      4.1 NTF后處理

      噪聲傳遞函數(shù)(NTF)分析后處理為Web界面。如圖4所示,可通過(guò)Web界面選擇待處理文件,再設(shè)定極大值取值的頻率區(qū)間、預(yù)警值和超標(biāo)值,再點(diǎn)“開(kāi)始處理”按鈕,程序就開(kāi)始進(jìn)行后處理了。后處理完成后,將生成NTF結(jié)果文件和數(shù)據(jù)曲線文件。

      分別打開(kāi)生成的2個(gè)文件,圖5左側(cè)為NTF響應(yīng)值數(shù)據(jù),其中深陰影數(shù)據(jù)表示響應(yīng)值超過(guò)最大目標(biāo)值,淺陰影數(shù)據(jù)表示響應(yīng)值超過(guò)預(yù)警值;圖5右側(cè)為9000002響應(yīng)點(diǎn)在工況1、工況2、工況3下的曲線圖。

      4.2 軟件后處理效率分析

      通過(guò)使用后處理軟件進(jìn)行后處理花費(fèi)用時(shí)進(jìn)行測(cè)試,后處理用時(shí)不到1 min。人工處理和軟件后處理平均用時(shí)的對(duì)比情況如下。

      (1)動(dòng)剛度后處理:人工約1.5 h,軟件為11 s,軟件用時(shí)是人工用時(shí)的1/540。

      (2)噪聲傳函后處理:人工約5 h,軟件為52 s,軟件用時(shí)是人工用時(shí)的1/360。

      (3)振動(dòng)傳函后處理:人工約15 h,軟件為45 s,軟件用時(shí)是人工用時(shí)的1/1230。

      可見(jiàn),軟件后處理效率驚人,可大大縮短分析周期。

      5 結(jié)論

      NVH分析后處理工作量非常巨大,提升后處理效率已經(jīng)是縮短CAE分析周期的關(guān)鍵要素。本文通過(guò)C#.Net編程技術(shù),提出了軟件設(shè)計(jì)和解決方案。

      (1)所有頻響類(lèi)分析計(jì)算結(jié)果的數(shù)據(jù)結(jié)構(gòu)是一致的,可以看成是某工況某頻率下響應(yīng)點(diǎn)的響應(yīng)值集合;通過(guò)C#類(lèi)可以將數(shù)據(jù)結(jié)構(gòu)表達(dá)出來(lái)。

      (2)NPOI導(dǎo)出Excel格式數(shù)據(jù)文件的功能很強(qiáng)大,使用也方便。

      (3)軟件實(shí)現(xiàn)后處理的效率遠(yuǎn)遠(yuǎn)高于人工處理。

      (4)頻響類(lèi)分析后處理通過(guò)軟件完成,不僅能夠加快工作進(jìn)度,保證時(shí)間節(jié)點(diǎn),還能降低工程師的工作負(fù)荷,使他們有更多的時(shí)間和精力集中于方案的設(shè)計(jì)和優(yōu)化上,達(dá)到提升方案質(zhì)量和數(shù)量的目的。

      (5)軟件后處理可以避免人工在重復(fù)性工作過(guò)程中犯錯(cuò)的情況,從而保證結(jié)果的準(zhǔn)確性。

      參 考 文 獻(xiàn)

      [1]廖毅,呂兆平.基于懸置支架動(dòng)剛度分析的整車(chē)NVH性能分析及改進(jìn)[J].企業(yè)科技與發(fā)展,2012(10):18-

      21.

      [2]岳奎.汽車(chē)NVH特性中的振動(dòng)噪聲分析[J].中國(guó)科技信息,2006(23):68-69.

      [3]鄭國(guó)君.基于知識(shí)的CAE后處理流程化平臺(tái)關(guān)鍵技術(shù)[J].機(jī)械工程學(xué)報(bào),2011,47(17):112-118.

      [4]王芬芳.基于ASP的遠(yuǎn)程CAE后處理系統(tǒng)的研究與實(shí)現(xiàn)[D].南寧:廣西大學(xué),2006.

      [5]樊紅光,昝建明.基于HyperMesh二次開(kāi)發(fā)的靜剛度分析程序[C].AltairHyperWorks技術(shù)大會(huì)論文集,2012:1-6.

      [6]黃霖.Abaqus/CAE二次開(kāi)發(fā)功能與應(yīng)用實(shí)例[J].計(jì)算機(jī)輔助工程,2011,20(4):96-100.

      [7]周舟.整車(chē)NVH性能開(kāi)發(fā)中的CAE技術(shù)綜述[J].汽車(chē)工程學(xué)報(bào),2011(3):176-184.

      [8]龐劍.汽車(chē)車(chē)身噪聲與振動(dòng)控制[M].北京:機(jī)械工業(yè)出版社,2015:232-257.

      [9]王的強(qiáng),張曉娜,周靜.LINQ入門(mén)與應(yīng)用[M].北京:清華大學(xué)出版社,2009:32.

      [10]吳延軍.NPOI完成對(duì)Excel含匹配字符串行的篩選[J].電腦編程技巧與維護(hù),2012(18):48-50.

      [11]昌兆文,劉湖平,曾紹軍.基于NPOI導(dǎo)出Excel文件的研究與實(shí)現(xiàn)[J].中國(guó)管理信息化,2013,16(15):93-94.

      [責(zé)任編輯:陳澤琦]

      林周县| 金川县| 黄陵县| 临夏市| 阳东县| 平昌县| 道孚县| 扶沟县| 客服| 怀集县| 建瓯市| 吉林市| 林甸县| 高陵县| 商洛市| 封丘县| 西盟| 无极县| 淳化县| 滨州市| 安岳县| 平度市| 宜昌市| 达孜县| 夏津县| 易门县| 肥城市| 平塘县| 广水市| 昂仁县| 微山县| 万荣县| 佛坪县| 敦化市| 丰都县| 龙泉市| 临汾市| 遵义市| 长乐市| 青海省| 茶陵县|