Airwhf / MEIAT-CMAQ

MEIAT-CMAQ是一个模块化的CMAQ排放清单分配工具。
28 stars 9 forks source link

运行coarse_emission_2_fine_emission.py后报错“lcc: Invalid value for lat_1 and lat_2” #15

Open alphasue12 opened 4 weeks ago

alphasue12 commented 4 weeks ago

MEIAT版本:1.4 运行平台:Windows 11 + Anaconda3 (各个组件包的版本见附录package_version.txt) namelist配置信息:详见附件namelist.input.txt namelist.input.txt package_version.txt error.txt

当我执行.\coarse_emission_2_fine_emission.py后,显示以下黑体的两行,持续约15秒后, --------------Fine grid shapefile|> E:\CMAQ_run_data\240819\MEIAT-CMAQ-1.4-OA/output/shapefile-grid.shp-------------- 2024-08-19 16:50:51.147114|> The control of create grid is 1 and processor start creating fine grid. 出现报错: Traceback (most recent call last): File "E:\CMAQ_run_data\240819\MEIAT-CMAQ-1.4-OA\coarse_emission_2_fine_emission.py", line 8, in main_coarse2fine() File "E:\CMAQ_run_data\240819\MEIAT-CMAQ-1.4-OA\src.py", line 292, in main_coarse2fine lon, lat = gf.ij2ll(gpdf["colnum"].values, gpdf["rownum"].values) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\PseudoNetCDF\core_files.py", line 363, in ij2ll p = self.getproj(withgrid=True) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\PseudoNetCDF\core_files.py", line 136, in getproj return getproj(self, withgrid=withgrid) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\PseudoNetCDF\coordutil.py", line 596, in getproj return pyproj.Proj(proj4str, preserve_units=preserve_units) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\pyproj\proj.py", line 109, in init self.crs = CRS.from_user_input(projparams, kwargs) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\pyproj\crs\crs.py", line 501, in from_user_input return cls(value, kwargs) File "C:\Users\Alpha_Su\Anaconda3\envs\CMAQ_2\lib\site-packages\pyproj\crs\crs.py", line 348, in init self._local.crs = _CRS(self.srs) File "pyproj\_crs.pyx", line 2378, in pyproj._crs._CRS.init pyproj.exceptions.CRSError: Invalid projection: +proj=lcc +lat_1=np.float64(25.0) +lat_2=np.float64(40.0) +lat_0=28.5 +lon_0=110.0 +y_0=902500.0 +x_0=-48000.0 +a=6370000.0 +b=6370000.0 +to_meter=3000.0 +no_defs +type=crs: (Internal Proj Error: proj_create: Error 1027 (Invalid value for an argument): lcc: Invalid value for lat_1 and lat_2: |lat_1 + lat_2| should be > 0)

请问可能原因为何?

Airwhf commented 3 weeks ago

您可以检查一下您的geopandas的版本是否是对的,您可以降低一下geopandas的版本试试。

下面的链接是关于这个问题的解决方法。

https://github.com/geopandas/geopandas/issues/1887

alphasue12 commented 3 weeks ago

感谢回复,我尝试按照链接中的方法分别将geopandas降低至0.9.0以及1.0.0,相同的问题(Error 1027)依然存在;后来也试过调整pyproj的版本,降低到3.3.0,也没有能够解决问题。 我换一个平台再试一下

Airwhf commented 3 weeks ago

这个问题确实是库的问题,您可以尝试换个电脑或者重新安装试试。

fatgroose commented 5 days ago

这个问题可以尝试从以下2方面解决: 1.安装geopandas的时候,从conda-forge源安装,即输入conda install -c conda-forge geopandas==0.12.2; 2.系统环境变量设置问题,在系统环境变量中添加PROJ_LIB的环境变量,变量值为PROJ 数据文件所在的目录路径,一般在你所用环境下(比如:D:\Anaconda3 \ "环境名"\arcgispro-py3-clone\Library\share\proj)。

alphasue12 commented 3 days ago

感谢回复,我尝试一下。