找回密码
 注册
Simdroid-非首页
查看: 232|回复: 0

[FEAP] FEAP输出matlab刚度矩阵的代码

[复制链接]
发表于 2017-3-18 16:54:56 | 显示全部楼层 |阅读模式 来自 江苏南京
最近接触FEAP,发现有时需要将FEAP输出matlab格式的刚度矩阵。
其实在FEAP的官网上有类似的代码,但可能只能在FEAP中使用,可惜论述上的FEAP没法编译通过,所以只能用FEAPpv
自己在FEAPpv加了一段代码。
如下:
c       output tang to file
        if (1) then
            if(isw.eq.3) then
                open(unit = 12,file = 'tang',status = 'replace')
                rewind(12)
                do i = 1,nst ! {
                  do j = 1,nst ! {
                    if(s(i,j).ne.0.0d0) then
                        write(12, 2001) i,j,s(i,j)
                    endif
                  end do ! j  }
                end do ! i  }
                close(unit = 12, status = 'keep')
            endif
        endif
2001    format(2i10,1p,1d25.15)
把这段代码加到你需要输出的单元文件的fortran中就行了
譬如3d壳单元文件shell3d.f的91行。
运行后就会得到tang文件,里面包括matlab认识的稀疏矩阵形式。
然后在matlab中使用下面两句命令就能得到matlab标准的矩阵形式的刚度
load tang
FEAPStiff = full(spconvert(tang));
得到下面类似的24X24的矩阵。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-27 02:54 , Processed in 0.026537 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表