自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(113)
  • 收藏
  • 关注

原创 Fortran二维数组去重(unique)算法实战

本文介绍了Fortran语言实现的二维数组去重算法,主要通过将二维数组每行转换为整数后排序去重。算法包含三个核心函数:unique(基础去重)、mergeArr(行转整数)、intdim2Arr2dim1Arr(二维转一维)。调用示例展示了对5x3数组的去重过程,输出去重索引和反向索引。该算法与Matlab的Unique函数结果一致,效率相当。关键点在于通过数值转换和排序实现高效去重,适用于科学计算中的数据处理需求。

2025-08-30 16:16:16 40

原创 Fortran快速排序算法实现与优化

本文介绍了Fortran实现的快速排序算法改进版,通过返回排序后的索引数组而非直接修改原数组,实现了保持原始数据不变、节省内存、支持关联数组同步排序等优点。文章包含算法实现的核心代码模块(qsort_mod),展示了对整数数组进行排序并输出原数组、排序索引及排序结果的示例程序。该改进算法递归调用QsortC_index子程序完成快速排序,通过Partition_index子程序实现数组划分,最终返回排序索引而非直接修改输入数组。这种实现方式特别适用于需要保留原始数据或对多个关联数组进行同步排序的场景。

2025-08-28 21:19:04 41

原创 Fortran实现 3维反距离加权(IDW)插值算法

本文介绍了使用Fortran实现3维反距离加权(IDW)插值算法。主要内容包括:1) 定义point3d类型存储三维坐标和值;2) 实现idw3d_interpolate函数,支持设置幂次、搜索半径和最小点数限制;3) 提供测试示例,展示5个采样点的插值过程和结果验证。该算法通过计算目标点与周围点的距离权重进行插值,可应用于三维空间数据建模。代码模块化设计,包含错误处理机制,确保在无有效点时返回缺省值。

2025-07-28 22:24:05 123

原创 Fortran实现二维反距离加权(IDW)插值算法

本文介绍了使用Fortran实现反距离加权(IDW)插值算法的方法。IDW算法通过计算待插值点与周围已知点的距离反比权重进行插值,距离越近的点权重越大。文章给出了IDW算法的原理、优缺点及适用场景,并提供了完整的Fortran实现代码,包括距离计算、权重分配和插值计算步骤。测试结果显示,该算法计算结果与Matlab保持一致。该方法适用于数据分布均匀、对计算速度要求高的场景,后续可用于快速散点插值应用。代码实现简洁高效,可作为空间插值问题的参考解决方案。

2025-07-27 15:16:46 213

原创 高效kdtree搜索算法Fortran实战

本文介绍了基于Fortran的k-d树搜索算法库kdtree2的使用方法。k-d树是一种用于高效查询多维空间点数据的二叉空间划分树结构。文章重点讲解了kdtree2库中的关键函数:kdtree2_create用于构建k-d树,kdtree2_n_nearest查找最近邻点,kdtree2_r_nearest查找距离阈值内的点,以及kdtree2_r_count统计符合距离条件的点数。最后给出了一个使用示例,展示了如何创建包含20,000个三维随机点的k-d树,并设置搜索最近50个邻居的参数。该库通过优化数据

2025-07-27 15:05:29 71

原创 Fortran实战:调用netcdf函数解析nc文件

本文介绍了使用Fortran解析气象NC数据的便捷方法。通过引用GitHub上的mo_netcdf项目,封装了netcdf-fortran库函数,简化了调用过程。文章提供了具体示例代码,展示如何读取NC文件中的经度、纬度和气压数据。该方法为气象数据处理提供了更高效的解决方案,适合需要快速解析NC格式数据的科研人员使用。

2025-07-20 15:17:01 451

原创 Fortran实战:快速解析气象NC数据

本文介绍了使用Fortran语言调用netCDF库解析气象NC数据的实用方法。文章首先列举了关键的netCDF函数,包括nf90_open、nf90_inq_varid等核心操作函数,并提供了官方文档参考。重点展示了一个完整的示例程序,逐步演示了如何读取包含经度、纬度和降水数据的三维数组,包括变量查询、维度获取和数据提取等关键步骤。程序成功解析了pre_2001.nc气象数据文件,并附有运行结果截图验证。该教程为Fortran用户处理气象NC数据提供了可直接参考的代码模板,帮助科研人员快速实现NC格式气象数

2025-07-19 21:27:50 358

原创 MOD数据获取及NDVI数据提取

本文介绍了MOD13C2植被指数数据的获取及NDVI提取过程。MOD13C2是MODIS提供的月合成三级产品,空间分辨率0.05°×0.05°,包含NDVI、EVI、反射率等多个数据集。文章详细说明了数据字段表及其质量标识位掩码解析方法。数据获取通过NASA EarthData网站完成,并推荐使用浏览器插件"DownThemAll!"实现批量下载。NDVI数据提取过程包括:读取原始数据并进行比例转换(×0.0001)、质量评价(解析VI Quality字段)、可靠性检测(Pixel Re

2025-07-19 10:22:45 1099

原创 中国1km逐月潜在蒸散发数据集 - matlab按shp批量裁剪

中国1km逐月潜在蒸散发数据裁剪方法 本文介绍了使用MATLAB对中国1km逐月潜在蒸散发数据集进行空间裁剪的技术流程。该数据集来源于国家青藏高原科学数据中心,空间分辨率约1km(0.0083333°),时间跨度为1901-2024年。处理方法主要包括:1)导入蒸散发数据并读取关键字段;2)根据研究区shp文件进行初步裁剪;3)利用已有降水掩膜文件进行二次精确裁剪;4)数据单位转换和无效值处理;5)数据去平均化处理并保存结果。文中提供了完整的MATLAB代码实现,包括数据导入、裁剪、插值和可视化验证等关键步

2025-07-18 21:59:07 172

原创 中国1km分辨率逐月平均气温数据集 - matlab按shp批量裁剪

本文介绍了利用MATLAB对中国1km分辨率逐月平均气温数据集进行批量裁剪处理的方法。数据集源自国家青藏高原科学数据中心,包含1901-2024年0.008333°(约1km)分辨率的NETCDF格式气温数据。处理流程包括:1)导入原始温度数据和shp文件进行四至裁剪;2)利用已有掩膜文件进行二次裁剪;3)对数据进行单位转换(0.1℃→℃)和无效值插值处理;4)计算相对平均温度并保存结果。通过该流程可实现研究区域内气温数据的精确提取,为后续分析提供基础数据支持。文中提供了完整的MATLAB代码实现方案。

2025-07-16 19:48:39 143 2

原创 基于matlab的--1km降水数据按掩膜裁剪并可视化

本文介绍了基于掩膜文件对中国1km分辨率逐月降水数据进行裁剪处理的方法。首先利用上期生成的区域掩膜文件对经纬网格进行裁剪,得到研究区网格点坐标。其次对逐月数据进行单位转换(0.1mm转cm)和无效值剔除,并通过插值处理填补无效值区域。然后将绝对降水量转为相对降水量后保存数据。最后通过GMT绘图验证插值结果,以长江中下游平原为例展示了完整的处理流程。文中提供了Matlab实现代码,包括主程序和子函数,可用于批量处理降水数据。

2025-07-15 22:32:46 317

原创 Matlab批量转换1km降水数据为tiff格式

本文介绍了使用Matlab将中国1km分辨率逐月降水量数据集(1901-2024)批量转换为TIFF格式的方法。主要内容包括:1)通过读取NC文件中的经纬度、时间和降水数据;2)使用子函数将每月数据单独保存为TIFF格式;3)在ArcGIS中可视化转换结果。该程序实现了降水数据的批量格式转换,未进行数据内容处理,适用于原始数据的格式转换需求。文末提供了完整代码示例,并提示读者可留言指正错误。

2025-07-13 21:40:46 99

原创 Matlab裁剪降水数据:1km掩膜制作实战

本文介绍了基于中国1km分辨率逐月降水量数据集(1901-2024)制作数据裁剪掩膜的方法。主要内容包括:1)数据概述,该数据集具有高时空分辨率,覆盖中国主要陆地;2)以长江中下游平原为例,演示如何使用Matlab代码结合shp边界文件生成研究区掩膜;3)提供完整的主函数和子函数代码,实现数据范围裁剪和掩膜创建功能。通过该方法可快速提取特定区域降水数据,为水文、生态等领域研究提供便利。文章还展示了掩膜效果图及裁剪后的数据可视化结果。

2025-07-11 22:06:10 125

原创 点云数据预处理 -- 点云数据下采样(体素下采样、随机下采样、非均匀网格下采样)

本文介绍了MATLAB中三种点云下采样方法及其应用场景。体素下采样通过网格化保留几何特征,适合大场景处理;随机下采样速度快但可能破坏局部结构,适用于实时系统;非均匀网格采样结合网格划分与随机选取,能保持法向量信息。三种方法各有特点,需根据数据精简率、特征保留度和计算效率需求选择合适方法。文章提供了MATLAB代码实现和可视化对比,帮助理解不同下采样技术的效果差异。

2025-06-12 01:30:00 841

原创 Matlab点云合并函数pcmerge全解析

Matlab中的pcmerge函数是用于合并点云数据的实用工具。该函数通过体素网格方法将两个点云对象合并,并减少冗余点。核心参数包括两个待合并的点云对象(ptCloudA和ptCloudB)以及决定空间分辨率的体素网格边长(gridStep)。文章通过两个示例展示了函数的基本用法和大规模点云处理的应用场景,特别强调了gridStep参数的选择对结果质量和性能的影响。对于大规模点云,建议合理设置gridStep值并进行分块处理以提高效率。文章还提供了批量处理点云文件的代码示例,通过对比不同gridStep值的

2025-06-10 23:15:03 847

原创 统一点云数据格式:高效转换与属性保留

本文探讨了统一不同点云数据格式的方法与意义。针对LAS、PLY、PCD等异构格式存在的兼容性问题、信息丢失和处理效率低等挑战,提出以PLY作为统一格式的方案,因其兼顾通用性与属性保留能力。通过属性映射表和MATLAB代码示例,展示了如何保留关键属性(如分类码、强度、RGB颜色)进行格式转换。文章还提供了处理常见问题的解决方案,最终指出统一格式将显著提升数据兼容性和算法开发效率。该研究对自动驾驶、三维建模等领域的点云数据处理具有实用价值。

2025-06-07 22:48:37 872

原创 认识不同格式的点云数据 - LAS/LAZ格式数据

LAS/LAZ格式是激光雷达点云数据的行业标准,由美国摄影测量与遥感协会(ASPRS)制定,最新版本为LAS 1.4。该格式包含文件头、可变长度记录和点数据记录三部分。文件头存储关键元信息,如文件签名、版本号和创建日期等;可变长度记录提供附加信息,如坐标系和颜色表;点数据记录则保存每个点的空间坐标和属性,如激光强度、回波编号和分类码等。较新版本还支持RGB颜色值、NIR近红外值和GPS时间戳等可选字段。通过创建lasFileReader对象,可以解析LAS数据并提取点云信息。

2025-05-20 09:00:00 1068

原创 认识不同格式的点云数据 -PLY格式数据

PLY(Polygon File Format)是一种由斯坦福大学图形实验室于1994年开发的三维数据格式,最初用于存储三维扫描仪生成的多边形网格数据,现广泛用于点云数据存储。PLY文件由文件头和数据部分组成,文件头以纯文本形式定义数据的元信息和存储格式,数据部分则按文件头定义的顺序存储实际数据,支持ASCII和二进制两种格式。文件头中包含元素(如顶点、面片)及其属性(如坐标、颜色、法向量等)的定义,数据部分则根据这些定义存储具体信息。PLY文件支持多种属性,包括三维坐标、RGB颜色值、法向量等,适用于三维

2025-05-20 02:45:00 900

原创 认识不同格式的点云数据 -OBJ格式数据转点云

本文详细介绍了OBJ文件格式的结构及其转换为点云数据的方法。OBJ文件是一种常用的三维模型文本格式,包含顶点、纹理坐标、法线和面等信息。通过解析OBJ文件中的顶点数据,可以直接提取顶点生成点云。此外,文章还介绍了如何在网格表面进行均匀采样,生成更密集的点云数据。具体步骤包括读取OBJ文件、提取顶点坐标、创建点云对象以及可视化点云。对于需要更密集点云的场景,文章提供了在三角面片上采样的方法,并给出了相应的代码示例。

2025-05-19 07:59:58 1094

原创 认识不同格式的点云数据 -PCD点云数据 & 文本点云数据

本篇介绍了PCD点云文件和文本点云数据的基本结构和解析方法。希望对你有所帮助。

2025-05-08 22:15:27 1142

原创 认识不同格式的点云数据 -OFF格式数据转点云

在MATLAB中读取OFF(Object File Format)格式的三维模型数据并将其转换为点云,需要解析文件内容并提取顶点信息。本篇对解析OFF数据的过程进行总结,希望对你有所帮助。

2025-05-06 22:09:45 588

原创 C++调用Python方法实践/总结,可以调用第三方库

本篇介绍了C++调用Python的过程,讲了环境部署的步骤,提供了对应示例,可以正确调用python函数。python提供的C API接口支持C/C++与Python的双向数据传递,有需要的可以自行查阅资料。希望对你有所帮助。

2025-04-24 08:19:04 879

原创 vcpkg安装及使用教程,以安装matio库解析mat文件为例

本文主要介绍了vcpkg工具的安装和集成过程,同时也介绍了利用matio库读取*.mat文件的示例。对于以后需要安装的第三方库,都可以尝试使用vspkg工具进行安装,比较省时、省事。希望对你有所帮助。

2025-03-31 23:57:36 1287

原创 利用c++解析*.mat格式文件

MAT文件是MATLAB使用的二进制数据文件格式,可以存储变量、矩阵、结构体等多种数据类型。要在C++中读取这些文件,我们需要使用MathWorks提供的库或第三方库。通过本文介绍的方法,你可以在C++项目中有效地读取和处理MATLAB的.mat文件。这对于需要在C++环境中使用MATLAB生成的数据的开发者特别有用。本篇主要讲了libmat-io库的配置和使用过程,提供了相关示例。希望对你有所帮助。

2025-03-30 18:13:39 1298

原创 deepseek本地部署及可视化输入

本篇简单梳理了deepseed本地部署的有关过程,进行了尝试可以在本地进行提问。希望对你有所帮助。

2025-02-04 14:35:33 2253

原创 win10 VS2019上libtorch库配置过程

本篇讲述了如何获取、配置libtorch库的过程,分享配置过程中遇到的问题及解决办法。

2025-01-06 21:13:37 1220

原创 Delaunay三角刨分算法理解及c#过程实现

本篇基于个人理解对Delaunay三角剖分算法的实现过程进行了简述,并分享了一个比较靠谱的Delaunay三角刨分算法,对算法进行了改写,使更符合实际用途,最后与Matlab计算结果进行了比对。

2025-01-05 16:14:37 1352

原创 25 - GRACE Mascon数据缺失月份数据插值

本篇基于文章的相关内容和文章公开的奇异谱分析(SSA)插值算法程序包,对grace Mascon数据种缺失的月份进行 插值 ,总结了使用程序包的相关过程,可以将该程序应用到其他数据处理插值计算中。

2024-12-28 16:09:50 1187 23

原创 基于matlab的凸包(Convex Hull)算法理解与测试

凸包算法是计算给定点集的最小凸包的一种算法。凸包是包含给定点集中所有点的最小凸多边形。根据具体的实现和算法思想,凸包算法可以分为以下几类:Jarvis算法(也称为包裹算法)、Graham扫描算法、QuickHull算法、Chan算法(也称为增量算法)、本篇结合网上搜集到的资料和程序,介绍下Graham扫描法的原理和实现过程。

2024-11-01 22:06:06 1211

原创 01 - matlab 点云工具箱(Point cloud tools for Matlab)配置

点云是由一组离散的点组成的数据集合,每个点都有一个位置坐标和可能的其他属性,如颜色、法向量、曲率等。点云可以用来表示三维空间中的物体表面的形状,可以从不同的传感器(如激光扫描仪、RGB-D相机、结构光等)获得。点云处理的主要任务包括数据预处理、特征提取、物体分割、场景重建和可视化等。数据预处理包括点云去噪、采样和对齐等。本篇介绍matlab上配置点云工具箱的过程,并加载点云数据测试配置是否完成。

2024-10-23 22:22:20 3417 1

原创 open3D release版配置及简单使用

Open3D是一个用于处理3D数据的开源库。它提供了一系列算法和工具,可以处理、可视化和分析3D点云、网格以及3D模型。它支持多种操作,包括点云的滤波、重采样和配准,网格的重构和变形,以及3D模型的分割和配准。  Open3D是用C++编写的,还提供了Python接口,可以方便地在Python环境中使用。它在功能和性能上都非常强大,适用于各种3D应用领域,如机器人、计算机视觉、虚拟现实等。本篇介绍将open3D-0.18.0的release版本配置到VS的过程,与配置第三方库的过程类似。

2024-10-08 23:05:43 1215

原创 用Matlab求解绘制2D散点(x y)数据的最小外接矩形

散点/多边形的外接图形是确定模型轮廓或姿态的一种可视化方法,也是有很大的用途的。前面已经介绍过两种简单的散点(x,y)外接图形的原理及实现过程,本篇继续理解下散点数据最小外接矩形的原理。前面提到的沿轴外接矩形,实际是一种简单的外接矩形,因为沿轴,所以方向已知,在XOY面内只有一个解,所以比较好求;最小外接矩形通常指面积最小或周长最小,在随机点中找满足条件的矩形,就需要在XOY内旋转矩形使其可以包含所有随机点。

2024-09-13 22:41:22 1082

原创 用Matlab求解绘制2D散点(x y)数据的最小外接圆、沿轴外接矩形

本篇简单介绍下散点数据最小外接圆、沿轴外接矩形的简单原理和matlab实现过程。求解散点外接圆关键是找到外接圆的圆心和最小半径,假设有散点数据集,可以通过以下步骤求解外接圆。通常外接矩形指的是面积最小的外接矩形,沿轴外接矩形(自己给命的名😜)就是矩形的长、宽分别和x轴、y轴平行的矩形。沿轴外接矩形的原理与上面介绍的外接圆的原理相似, 关键是求矩形的四个角点的坐标。仍假设有散点数据集,具体步骤如下。

2024-09-12 21:57:05 1149 3

原创 C# messagePack对类(class)序列化简单示例

MessagePack是一种高效的二进制序列化格式,它可以在C#中用于序列化和反序列化对象。与其他序列化格式相比,如JSON和XML,MessagePack的编码和解码速度更快,生成的二进制数据更小。在C#中使用MessagePack进行序列化和反序列化非常简单。可以使用NuGet包管理器安装MessagePack库到工程项目中,安装最新版本即可。安装后可以通过相关命令,对需要的类/数据进行序列化,得到序列化后的字节数组。

2024-08-24 15:53:48 1034

原创 24 - GRACE Mascon数据的Matlab处理

GRACE重力数据的发布形式主要是球谐系数形式和Mascon产品,常用的GRACE-Level2数据是球谐系数形式的,在使用该数据进行重力场变化反演时往往要进行数据预处理和泄露误差改正、GIA改正等后处理过程,这些处理过程目的一致,都是为了消除数据中的各种误差。Mascon产品在生产过程中已经对数据存在的各种误差进行了改正或削减,满足重力场反演的大多数场景,并且提高了数据的空间分辨率,具有普适性的特点。本篇使用Matlab对GRACE Mascon产品进行处理,可自由提取所需研究范围的数据进行单独分析。

2024-08-14 09:00:00 1589 3

原创 23 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(三) - Slepian谱分析法使用示例

前两节分别讲述了slepian的有关理论和slepian程序集的配置过程,到此,应该就可以基于slepian做一些有关GRACE数据处理的事情了。本篇以及下一篇将分别以南极区域和长江流域为研究对象,分别进行selpian局部谱分析进行泄露信号恢复,确定slepian方法在GRACE数据处理中的适用性。需要了解相关理论的可以看博文《21 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(一) - slepian分析法理论理解》。

2024-08-09 22:10:45 306

原创 22 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(二) - Slepian谱分析程序包初始化

上篇提到进行slepian谱分析可以使用美国普林斯顿大学Frederik Simons教授提供的Slepian局部谱分析程序包,程序可以在GitHub上获取,利用该程序包可以实现将GRACE球谐系数转化为Slepian系数,进而利用slepian局部谱分析对泄露信号进行恢复。本篇重点介绍Slepian局部谱分析程序包的配置过程。

2024-08-06 09:00:00 341 6

原创 21 - grace数据处理 - 补充 - 泄露误差改正 - Slepian局部谱分析法(一) - slepian分析法理论理解

Slepian局部谱分析法也是一种信号恢复方法,旨在解决一维连续情况下的时域和频域能量集中问题,随后被不断发展并引入到重力场研究领域。Slepian法可以将GRACE球谐系数转换为即在全球正交又在局部区域正交的slepian系数,通过局部正交的Slepian基函数可以有效减少时变重力信号的泄露,从而能够提高区域重力信号的信噪比。本篇将slepian局部谱分析法的相关理论及实现过程进行整理,并用Matlab实现。内容分3个小节,第一节即本篇简述slepian的相关理论,对各子过程进行展开。

2024-08-05 08:46:49 487

原创 基于fortran的TimSort排序算法,最快的排序算法

在使用排序算法的时候注意到有Timsort也是一种排序算法,并且有博文介绍,其速度是目前可见算法种较快的,效率要优于快速排序,基于此将该算法用fortran语言进行了实现,运行结果是整正确的,运行速度较QuickSort相当,后续对该方法进行优化再做比较。本篇算法有运行示例,比较好理解和调用,且代码的流程与介绍中的流程高度吻合。希望有所帮助。

2024-07-15 09:00:00 698

原创 15 - matlab m_map地学绘图工具基础函数 - 一些数据转换函数(二)

篇介绍了读取Sandwell和Smith测深文件的函数(mygrid_sand2)和获取椭球测地线的点的函数(m_geodesic),通过示例展示了各函数的基本用法,对于绘制常见地学图已经够用了,后面若发现还有其它相关函数再进行补充。

2024-07-13 16:22:00 601

关于grace地下水储量计算的Matlab程序

该资源包含地下水储量计算和泄露误差改正的Matlab代码,有测试数据,可以直接运行得到青藏高原地区的地下水储量变化结果。该程序输入数据为陆地水储量变化、地表水储量变化、gai改正数据,这3个数据用其它程序计算,都在资源中。有关的内容或理论可以查看系列文章【https://blog.csdn.net/weixin_43339605/cat】。如有问题可以留言或私信讨论。

2024-06-01

grace数据处理 - 冰后回弹(GIA)改正的Matlab可运行程序

本资源包含冰后回弹(GIA)改正的可运行matlab代码和测试数据,可以直接运行得到月冰后回弹变化等效水厚数据,方便用于后续的地下水储量计算。本程序使用的数据为球谐系数形式的GIA模型,处理过程中进行了球谐系数截断、高斯滤波、球谐展开等过程,得到对应区域的冰后回弹变化速率。具体理论及内容可以参考[https://blog.csdn.net/weixin_43339605/category_12556003.html]中的相关文章,本资源关联的文章也在其中。

2024-05-29

gldas数据处理的Matlab程序,可与Grace反演过程结合计算地下水储量变化

本压缩文件包含Gldas数据处理的Malab代码和测试数据,程序可直接运行,结果输出为文件,需要出图的可以用Gmt进行绘图。本程序简单介绍:由水量平衡方程可以将地下水储量的计算过程分解为以下部分,`第一部分计算陆地水储量变化`、`第二部分计算地表水储量变化`、`第三部分计算冰后回弹改正`、`第四部分计算地下水储量变化`。本篇简单介绍下第二部分的内容,主要是GLDAS水文模型数据的有关处理过程,同样也是对前面几篇博文方法的一个整合或总结 。详细理论和介绍可以参考[https://blog.csdn.net/weixin_43339605/category_12556003.html]系列博文,希望有所帮助,同时遇到问题也可以留言交流。

2024-05-28

grace陆地质量变化Matlab程序,有测试数据可直接运行

GRACE数据处理:根据水平衡方程,计算地下水储量变化,要知道陆地质量变化和地表水储量变化,本程序为地下水储量变化计算的一步,用于处理GRACE数据,反演得到陆地质量变化(陆地水储量变化),该程序包含测试数据,可直接运行,如运行出错可更换matlab版本到2019。具体理论及过程可以查看系列文章(https://blog.csdn.net/weixin_43339605/category_12556003.html),如有问题可以留言讨论。

2024-05-26

grace数据处理-去相关滤波方法Matlab程序

GRACE去相关滤波测试程序,包含测试数据和测试主程序,可以直接运行,并输出一个月的平均水高值。相关滤波最早由Swenson和Wahr提出,用于减少球谐系数奇次和偶次的相关性从而减少条带效应。后续经过改进将滑动平均的思想引入到传统的去相关滤波算法,从而有了基于滑动窗的多项式拟合去相关滤波方法。

2024-05-16

读grace数据并进行低阶项替换

关于Grace模型数据的介绍可以《00 - GRACE卫星及数据简述》,数据由3家机构发布,这里做一个关于数据读取的补充,源码来自(https://github.com/csdms-contrib/slepian_delta),直接运行slepian_delta中的程序会出现意想不到的错误,下面分享的程序是在此基础上的改进和优化,仅提取了读GRACE数据的相关方法,能够进行3家机构数据的读取和低阶项的替换

2024-04-27

全球主要流域边界(shp)数据

全球主要流域边界(shp)数据,包含主要流域边界数据

2024-04-02

grace数据处理程序,用于从球谐系数反演到区域网格,研究范围支持输入文件或四至

该资源包含Matlab程序和测试数据,以长江中下游平原为测试区,程序简单符合GRACE数据处理理论,设置好输入就可以输出得到需要的结果。可以参照博文《02 - GRACE数据处理步骤简叙》进行理解。如有问题可以留言交流。

2024-03-31

grace数据处理 泄露误差改正 质量快集中法(Mascon)或空域法,是一种后处理方法

该资源包含数据处理的Matlab源码和相关测试数据,与博文《grace数据处理 - 泄露误差改正 - 空域滤波法》是对应的。空域法的基本思想是假设地面某区域的质量变化是由一系列位置已知、质量未知的质量块(小范围区域)引起的,那么将GRACE反演的结果归算到n个质量块上的过程就是泄露信号恢复的过程。

2024-03-31

Trmm降水数据处理(详细过程),使用Matlab进行数据处理+GMT绘图

之前分享过Trmm数据处理的代码和过程,从中也反馈了些问题,对此又重新整理及复现了整个过程,这里将代码和说明文档以及绘图程序进行打包分享,希望帮到你。

2023-05-01

温度数据处理matlab程序,得到GISTEMP温度异常变化

GISTEMP全拼为GISS Surface Temperature Analysis,是美国国家海洋和大气管理局(NOAA)提供的全球表面温度再分析数据集,该数据集是由地表气温数据集(CHCN-M)和ERSSTv5的SST结合处理而成的,是用于监测全球或区域温度变化和趋势的主要数据集之一。该数据的空间分辨率为2°x2°,时间分辨率为1月,覆盖范围是89.0N—80.0S, 1.0E—359.5E,数据集提供了1980年至今的所有数据,具有较好的时间连续性。本程序可以处理对应数据得到区域平均值和相应的变化速率。

2022-11-27

Arma模型时间序列预测Matlab实现

Arma模型(自回归移动平均模型)是时间序列分析中常用的模型之一,它可以用于预测未来的时间序列值,本程序用仿真时间序列对各种情况进行方案测试,发现具有随机误差信号的时间序列用ARMA模型预测效果会差一些,该程序包含了ARMA预测和ARIMA预测的所有逻辑,部分内容参考了一些优秀博文或有雷同。

2023-10-15

正演建模法(forwardModeling)泄露误差改正的Matlab程序

本程序包含forwardModeling实现过程的所有代码,有测试数据,可以直接运行。正演建模法最早是由Chen等提出的,本质是通过迭代的思想反求真实信号的过程,为什么要反求呢?因为在数据处理过程中做了球谐截断和空间滤波,使部分有用信号被湮灭,也就是有信号泄露了,那迭代解即为恢复的结果。

2024-03-17

grace泄露误差改正 + 区域核函数法 + Matlab程序

区域核函数法是一种泄露误差估计方法,依赖于水文模型数据,该方法适用于中小尺度范围的泄露误差改正,能够量化边缘效应的影响。本程序包含实验数据,可直接运行。

2024-02-25

grace数据处理 - 泄露误差改正 - 单尺度因子法 - matlab程序 - 包含实例数据

尺度因子法的基本原理是将水文模型进行球谐展开,然后基于滤波前后水储量均方根之差,量化信号泄漏误差,尺度因子k就是量化变量,可以通过最小二乘回归方法解算。本程序将尺度因子法的实现过程进行整理,程序可运行有实例数据。

2024-02-09

GRACE球谐系数阶方差计算+维纳滤波的matlab代码

维纳滤波是GRACE数据处理的一种空间滤波方法,它是一种各项同性滤波器,通过设计滤波器,对信号进行线性卷积得到的实际输出信号,使其与期望输出信号满足最小二乘,从而得到维纳滤波函数。通过matlab代码结合网上资源写了计算阶方差的方法,并实现了维纳滤波计算到平滑函数的过程。该程序包包含测试数据、主调函数和相关子函数。

2024-01-15

c# - winform调用fortran/c++动态链接库的实现

调用C++或Fortran接口可以使C#语言能够访问高性能的库、实现底层操作或处理特定平台相关的功能,从而扩展C#的功能和性能,更具体的有以下几条优势: 调用现有的C++或Fortran库:C#语言本身有一些功能限制,无法直接实现一些高性能的计算或底层操作。在这种情况下,可以使用C++或Fortran编写的库,然后通过C#调用该库来实现需要的功能。 具有优化的计算需求:C++和Fortran语言在计算密集型任务方面通常具有更好的性能。因此,如果需要进行大规模的数值计算或者需要高效的算法实现,可以通过C#调用C++或Fortran接口来提高性能。 跨平台需求:C#是一种跨平台的开发语言,可以在Windows、Linux和Mac等多个操作系统中运行。但是,有些底层操作系统相关的功能可能无法直接在C#中实现,而C++或Fortran可以提供这些功能。因此,可以通过C#调用C++或Fortran接口来实现特定平台相关的功能。

2024-01-01

c# winform调用cmd命令+写bat脚本并执行

调用 cmd(Command Prompt)是一种常见的操作系统间的交互方式。在 C# 中调用 cmd 可以实现一些系统级的操作,比如执行命令行工具,管理系统资源等。它有以下优势: (1)强大的系统级操作:通过调用 cmd,可以执行各种系统命令,如创建、删除、复制、移动文件和文件夹等。这使得编程人员可以更方便地进行系统级的操作,而不需要自己编写复杂的代码。 (2)调用外部工具:有些功能无法用 C# 直接实现,但可以通过调用 cmd 执行相应的命令行工具来实现。这样可以充分利用现有的工具和资源,提高开发效率。 (3)灵活性和可扩展性:cmd 提供了丰富的命令和选项,可以满足各种操作需求。而且可以通过批处理脚本编写复杂的操作流程,提高代码的可读性和可维护性

2023-12-30

c# progressBar进度条项目

用多线程的实现循环滚动进度条,主线程运行结束时进度条线程同步结束。

2023-12-30

利用奇异谱分析方法(SSA)进行时间序列预测,是一种纯数学方法的时间序列向后预测方法

在了解SSA时候从文献中看到该预测方法,并将其实现,通过简单的案例测试了该方法,并得到较好的预测结果。当然该方法对非平稳序列的预测、长时序预测的效果怎样还未知,需要进一步验证,这里将代码进行整理和分享。

2022-11-10

Ollama安装文件,从官网下载

Ollama安装文件,从官网下载,用于本地部署deepseek

2025-02-04

delaung三角刨分C#代码实现,可以直接运行并通过图示看刨分结果

本资源包含完整的C# delaung三角刨分算法的代码,测试数据用的随机数据,计算完成后能够在Form窗体上绘图,可以直观执行结果。三角剖分是一种将平面或曲面划分成三角形集合的方法。在二维平面中,给定一个平面区域(可以是多边形等),通过连接区域内的一些点,使得整个区域被分割成若干个三角形,这些三角形彼此相邻,且它们的并集就是原来的平面区域。例如,对于一个简单的矩形,我们可以通过连接矩形的对角线,将其三角剖分成两个三角形。

2025-01-05

grace数据处理 ,缺失月份数据插值 ,奇异谱分析(ssa), 基于matlab

本程序总结了利用ssa算法对grace mascon缺失月份数据插值的过程,该程序包含完整代码和测试数据,可直接运行,并提供了简易文档。详细过程可参考专栏《grace数据处理过程介绍及代码实现》内容。 对grace缺失数据的填补使用神经网络算法或许效果最好,其利用与研究区高度相关的多源数据(如降水、温度、水井数据等)作为输入构建神经网络,以往期已知数据作为训练样本,可以得到较为可靠的插值结果,符合研究区自然规律。SSA插值算法是一种数学插值方法,它对时间序列的分解结果依赖于一些参数的选择,如滞后阶数、窗口长度等。不同的参数选择可能会导致不同的结果。SSA插值算法对离群值、噪声等干扰较为敏感,可能会产生不准确的插值结果。所以利用该算法插值的结果对重力变化敏感区域可能不适用。

2024-12-28

三角刨分算法 用Fortran语言实现,并与Matlab进行了对较

本程序包含可执行代码及简易使用说明,包含有测试程序,链接到Fortran环境可直接编译运行,执行结果与Matlab比较过。三角剖分是一种将平面或曲面划分成三角形集合的方法。在二维平面中,给定一个平面区域(可以是多边形等),通过连接区域内的一些点,使得整个区域被分割成若干个三角形,这些三角形彼此相邻,且它们的并集就是原来的平面区域。例如,对于一个简单的矩形,我们可以通过连接矩形的对角线,将其三角剖分成两个三角形。

2024-12-07

open3D-18.0库文件,包含Release和Debug两个版本的

本资源提供open3D-18.0的库文件,可直接配置到c++中使用,配置过程可参考作者博文。Open3D是一个用于处理3D数据的开源库。它提供了一系列算法和工具,可以处理、可视化和分析3D点云、网格以及3D模型。它支持多种操作,包括点云的滤波、重采样和配准,网格的重构和变形,以及3D模型的分割和配准。它还提供了一些计算几何和几何图形的基本功能,如点和网格之间的距离计算、法线估计和曲面重建。Open3D是用C++编写的,还提供了Python接口,可以方便地在Python环境中使用。它在功能和性能上都非常强大,适用于各种3D应用领域,如机器人、计算机视觉、虚拟现实等。

2024-09-28

matlab求解散点数据的最小外接圆

资源中有可运行的完整代码,包含计算的函数和测试主程序,可以直接执行并显示结果。

2024-09-15

利用Matlab,基于凸包算法,实现二维散点数据最小外接矩形求解

本资源为求解散点最小外接矩形的Matlab方法,有运行示例和示例截图。散点/多边形的外接图形是确定模型轮廓或姿态的一种可视化方法,也是有很大的用途的。前面已经介绍过两种简单的散点(x,y)外接图形的原理及实现过程,本篇继续理解下散点数据最小外接矩形的原理。前面提到的沿轴外接矩形,实际是一种简单的外接矩形,因为沿轴,所以方向已知,在XOY面内只有一个解,所以比较好求;最小外接矩形通常指面积最小或周长最小,在随机点中找满足条件的矩形,就需要在XOY内旋转矩形使其可以包含所有随机点,且面积/周长最小的,即为符合要求的解。本篇基于网上资料使用凸包算法求解散点的最小外接矩形。

2024-09-13

Matlab点云数据处理工具箱(Point cloud tools for Matlab)

Matlab点云工具箱主要用于处理、可视化和分析点云数据,该工具箱提供了丰富的函数和工具集,可以通过简单的命令和函数调用完成点云处理任务。同时,Matlab作为一个通用的编程环境,还可以与其他Matlab工具箱和函数库进行无缝集成,提供更灵活、高效的点云处理解决方案。

2024-09-04

c# 利用messagepack对类/数据进行序列化/反序列化示例

MessagePack是一种高效的二进制序列化格式,它可以在C#中用于序列化和反序列化对象。与其他序列化格式相比,如JSON和XML,MessagePack的编码和解码速度更快,生成的二进制数据更小。在C#中使用MessagePack进行序列化和反序列化非常简单。可以使用NuGet包管理器安装MessagePack库到工程项目中,安装最新版本即可。安装后可以通过相关命令,对需要的类/数据进行序列化,得到序列化后的字节数组。本资源包含了MessagePack的两个关键dll和示例文档,希望对你有所帮助。

2024-08-24

关于fortran接口序列化 / 反序列化的messagepack数据格式互转程序集

MessagePack(Msgpack) 是一种紧凑、快速、二进制序列化格式,允许你在多种语言间交换数据。它类似于 JSON,但提供了更高的效率和更小的尺寸。尽管是一种二进制格式,但 MessagePack 设计之初就考虑到了跨语言使用的便利,目前它已被广泛支持在包括 Python、Ruby、JavaScript 和 C++ 在内的多种编程语言中。

2024-08-22

基于Matlab的一维时间序列十三点滑动平均算法

滑动平均是一种常用的平滑数据的方法,可以用于去除噪声或者提取趋势。十三点滑动平均是指使用窗口大小为13的滑动平均,应用于一维时间序列中可以去除周年项的影响,适用于带季节性周期的时间序列。

2024-08-13

使用matlab程序调用GMT绘图工具绘制地学图件的相关资源

本资源包含了一个完整的Matlab函数,该函数用于动态加载和保存地学图件,用Matlab调用GMT API接口,对程序中绘图大有益处。

2024-08-12

slepian程序集安装及示例文件,可以根据此文件配置整个slepian程序集

本程序集包含了安装说明、示例文件和帮助文档,能够快速帮助理解slepian分析的有关方法,程序集支持安装在linus环境,支持一键安装,对重力场反演领域具有较大的应用潜力。

2024-08-04

slepian球谐分析示例程序 包含一个示例文档

基于slepian球谐分析程序仿真局部重力场变化

2024-08-04

小波去噪的Matlab仿真程序,对一维序列进行去噪

本程序包含一个简单示例,利用Matlab代码对一维时间序列进行噪声去除,主要过程调用了Matlab自带的函数。小波分析的有关知识:Donoho提出的小波阀值去噪的基本思想是将信号通过小波变换(采用Mallat算法)后,信号产生的小波系数含有信号的重要信息,将信号经小波分解后小波系数较大,噪声的小波系数较小,并且噪声的小波系数要小于信号的小波系数,通过选取一个合适的阀值,大于阀值的小波系数被认为是有信号产生的,应予以保留,小于阀值的则认为是噪声产生的,置为零从而达到去噪的目的。

2024-07-23

timeSort排序算法用Fortran实现

本资源基于Fortran实现了timeSort算法,提供了运行示例代码可以直接运行看排序结果。Timsort是一种混合排序算法,它结合了插入排序和归并排序的思想。它由Tim Peters在2002年为Python编程语言开发而来,并被应用于Java的Arrays.sort方法和Python的sorted函数中。 Timsort的基本原理如下: 1. 首先将要排序的数组分割成大小相等的块,这些块被称为run。每个run都可以使用插入排序进行排序。 2. 排序后的run会被合并成更大的run,直到所有的run都被合并为一个run。合并操作使用归并排序的方式进行。 3. 为了提高效率,Timsort使用了一种优化的合并策略,称为galloping mode(飞跃模式)。当两个run进行合并时,如果其中一个run的元素在另一个run中都找不到比它小的元素,那么可以直接将整个run复制到目标数组中,而不需要逐个比较和复制元素。这种策略可以显著提高排序效率。

2024-07-23

基于fortran编程语言实现二维矩阵按逐行/逐列进行排序的算法

本资源包含两个f90文件和运行结果截图,实现了二维矩阵按逐行或逐列进行排序的功能,是简单一维排序在二维行的应用,将文件放入Fortran工程中可以直接运行,通过控制输入参数可以实现按行\案列\正序\倒序不同的排列方案。

2024-07-06

基于Fortran实现一维数组的简单排序算法,通过参数可以控制进行正序或倒序排序

本资源包含了一个排序函数和一个主程序,主程序包含一个调用示例,能够对一维数组进行正序和倒序排列,并打印了排序结果,module文件中包含一个排序算法,输入一个输入返回一个排序后的数组,调用形式比较简单。

2024-07-04

基于matlab的m-map工具,在投影坐标上绘制风向玫瑰图

本资源包括绘图的示例数据和可运行代码,可以直接运行,绘制得到基于投影坐标下的风向玫瑰图。使用的为m_map中m_windrose函数函数。风向玫瑰图通常用来显示风的方向和频率分布,适合气象学和地理学的应用。

2024-07-04

利用m-map库绘制风羽图的matlab程序,有示例数据,可以直接运行

本资源是用Matlab绘制风羽图的程序,使用了m_map绘图库,支持在投影坐标系下进行制图,可以加载边界和其他地学要素,压缩包中有测试数据以供使用,如果需要了解更多m_map绘图的内容,可以参考系列博客[https://blog.csdn.net/weixin_43339605/article/details/139704725].

2024-07-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除