美文网首页科研钥匙码农的世界程序员
如何使用COMSOL with MATLAB的清单

如何使用COMSOL with MATLAB的清单

作者: 赤子桥 | 来源:发表于2017-08-15 18:17 被阅读4096次

    引子

    责其所难,则其易者不劳而正;补其所短,则其长者不功而遂(资治通鉴)

    COMSOL是一个强大的多物理场仿真软件,容易上手,入门门槛低,便于对简单的模型进行计算。
    我从2010年接触到现在,断断续续用它,用得越多越发现高级用法竟然是和其它软件相结合.
    比如和MATLAB。
    当你要使用参数化设置时,比如使用自定义的函数时行边界条件设定,
    又比如使用复杂的模型的时候,
    再比如进行后处理绘图时,
    与MATLAB结合,更显强大。

    事物发展的趋势就是多个优势结合,强强联合,而不是孤注一掷。个人觉得COMSOL这一点做得很好。

    快速入门COMSOL with MATLAB

    首推新浪博主天乐树Comsol with Matlab Quick Started(1)这一篇博客非常全面,虽然讲的是COMSOL4.3,但它对COMSOL5.x版本依然值得参考。

    除了没有谈到怎么安装的问题,其它都非常简洁实用。其实在启动前需要一个安装步骤,它没有啥好说的,因为COMSOL跨平台做得比较好,在windows下和linux/unix下安装唯一的一点区别就是前者双击setup.exe,后者在terminal里执行./setup,如果需要权限不够的话加一个sudo就好了。

    你需要的内容的框架​

    1. Comsol with Matlab安装

    2. Comsol with Matlab环境设置

    3. 基础命令

    4. API调用方法

    5. 案例

    • 建立随机几何模型
    • 瞬态边界条件类型的改变
    • 导出数据后处理
    • 命令模式求解

    资源清单

    1. 视频

    一个入门案例是中仿科技视频介绍的建模流程
    了解如何在 COMSOL Desktop® 的仿真设定中综合 MATLAB® 的功能。
    此外,还介绍了如何在 MATLAB® 图形用户界面中对您的 COMSOL Multiphysics® 模型进行编程控制,以便执行个案研究及定制绘图和进行数据处理。

    1. 博客
    1. 基础命令

    以下命令是从COMSOL5.0的帮助文档里翻译过来的,可能有些不准确,希望大家自己去试一试。

    界面函数
    函数 功能
    mphcd 改变工作路径至模型路径,用法 mphcd(model)
    mphdoc 返回帮助档
    mphload 加载一个mph文件
    mphsave 保存模型文件
    mphstart Matlab中启动Comsol Server
    mphversion 返回COMSOL版本号
    几何函数
    函数 功能
    mphgeom 画几何
    mphimage2geom 转换image文件为几何文件
    mphimage2geom(imagedata,level,…)
    mphviewselection 高亮显示选择区域,注先标号,后类型
    mphviewselection(model,geomtag,number,entity,...)
    网格函数
    函数 功能
    mphmesh 显示网格
    mphmeshstats 显示网格统计数据
    应用函数
    函数 功能
    mphgetadj 返回邻居
    mphgetadj(model,geomtag,returntype,adjtype,adjnumber)
    mphgetcoords 返回几何坐标(注:是两个坐标系下的坐标,按列排列)
    mphgetcoords(model,geomtag,entitytype,entitynumber)
    mphgetu 返回解向量,即模块的自变量
    U = mphgetu(model,...)
    [U,Udot] = mphgetu(model,...)
    type: Sol, Reacf, Adj, Fsens, Sens
    mphinputmatrix 线性求解器中加入矩阵
    mphinputmatrix(model,str,soltag,soltypetag)
    mphmatrix 获取模型矩阵
    str = mphmatrix(model,soltag,'Out',{'A'},...)
    mphselectbox 框选几何
    mphselectbox(model,geomtag,boxcoord,entity,...)
    mphselectcoords 点选几何
    mphselectcoords(model,geomtag,coord,entity,...)
    mphsolinfo 获取解对象信息
    mphsolutioninfo 获取求解对象信息
    mphstate 获取动态系统的状态-空间矩阵
    mphxmeshinfo 抽取延伸网格信息
    后处理函数
    函数 功能
    mpheval 计算节点表达式值
    pd = mpheval_r(model,{e1,...,en},...)
    mphevalglobalmatrix 计算全局矩阵变量
    mphevalpoint 在几何节点上计算表达式值
    mphglobal 计算全局量
    mphint2 表达式积分运算
    mphinterp 在任意点或数据集上计算表达式值
    mphmax 表达式最大值
    mphmean 表达式平均值
    mphmin 表达式最小值
    mphparticle 在颗粒迹线上计算表达式值
    mphplot 绘制解
    mphtable 获取表数据
    模型信息及导航
    函数 功能
    mphgetproperties 获取模型属性
    mphgetexpressions 获取模型变量和参数
    mphgetselection 获取模型选区信息
    mphmodel 返回模型对象
    mphmodellibrary GUI查看模型库
    mphnavigator GUI查看模型对象
    mphsearch GUI搜索模型对象表达式
    mphshowerrors 显示模型对象的错误或警告信息

    (未完待续)

    相关文章

      网友评论

        本文标题:如何使用COMSOL with MATLAB的清单

        本文链接:https://www.haomeiwen.com/subject/uypvrxtx.html