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

[后处理] ansys瞬态分析结果转化到频域的方法

[复制链接]
发表于 2009-6-3 19:19:21 | 显示全部楼层 |阅读模式 来自 黑龙江哈尔滨
本帖最后由 shixingbao714 于 2009-6-22 13:33 编辑

ansys瞬态分析后,结果是时间的曲线(即时域的),那么在ansys中有什么方法将它转化为频域的结果曲线吗?

谢谢
发表于 2009-6-4 10:56:13 | 显示全部楼层 来自 湖北武汉
Simdroid开发平台
关注中~~~
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-4 16:06:29 | 显示全部楼层 来自 黑龙江哈尔滨
2# zhafeiyang
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-5 19:50:12 | 显示全部楼层 来自 黑龙江哈尔滨
顶一下!!!
回复 不支持

使用道具 举报

发表于 2009-6-5 22:08:47 | 显示全部楼层 来自 黑龙江哈尔滨
频率转化到时域,时域转化到频域的方法,希望大侠赐教啊
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-6 16:58:25 | 显示全部楼层 来自 黑龙江哈尔滨
是不是必须得借用其他软件才可以啊
回复 不支持

使用道具 举报

发表于 2009-6-7 00:30:50 | 显示全部楼层 来自 美国
Hehe, one way is just to take the FFT on result in time-domain. Another way is to apply the load as sin function and run harmonic analysis in ANSYS, then you directly get the frequency-domain response.
For instance, I used to simulate the temperature response of a  structure under heat flux in the form of q" = Q*sin(omega*t), where omega is the frequency. Harmonic analysis in ANSYS directly yields the complex number temperature field, which gives the spatially distributed temperature amplitude and phase delay with respect to the input heat flux.

Also you may try *MFOURI on your time-domain curve to get cofs at desired frequency point.
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-7 08:59:49 | 显示全部楼层 来自 黑龙江哈尔滨
7# iomega

thank you for your answer!
回复 不支持

使用道具 举报

发表于 2009-6-9 14:29:05 | 显示全部楼层 来自 山东青岛
ansys瞬态分析后,结果是时间的曲线(即时域的),那么在ansys中有什么方法将它转化为频域的结果曲线吗?

谢谢
shixingbao714 发表于 2009-6-3 19:19

我也想知道,最近在做地震谱分析,但是一般给的都是加速度与时间的曲线,计算完瞬态分析后,得到时程曲线,不知道怎么得到频域曲线?通过谱分析,又不知道地震波的频域曲线,不知道能不能向上面所说的方法,能转化过去?
哪位高手知道指点下
回复 不支持

使用道具 举报

发表于 2009-6-10 08:16:28 | 显示全部楼层 来自 黑龙江哈尔滨
9# hejiming

目前个人觉得好像只能借助第三方软件了
回复 不支持

使用道具 举报

发表于 2009-6-10 09:23:26 | 显示全部楼层 来自 上海浦东新区
付立页变换
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-10 16:11:50 | 显示全部楼层 来自 黑龙江哈尔滨
11# jinpingzhu

傅里叶变换在ansys里可以实现吗?

谢谢
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-12 08:24:38 | 显示全部楼层 来自 黑龙江哈尔滨
fft变换应该是有可以用的公共程序吧(在ansys中),大家分享一下呗

谢谢
回复 不支持

使用道具 举报

发表于 2009-6-12 14:21:20 | 显示全部楼层 来自 黑龙江哈尔滨
fft变换应该是有可以用的公共程序吧(在ansys中),大家分享一下呗

谢谢
shixingbao714 发表于 2009-6-12 08:24



这个经常能够用到啊
关注中……………………
回复 不支持

使用道具 举报

发表于 2009-6-13 17:23:56 | 显示全部楼层 来自 陕西西安
FFT快速傅立叶变换……
回复 不支持

使用道具 举报

发表于 2009-6-14 09:12:55 | 显示全部楼层 来自 黑龙江哈尔滨
15# fengzhishenghen

谢谢回答,这个我也清楚,可是在ansys里怎么实现呢?

是有相应的命令吗?
回复 不支持

使用道具 举报

发表于 2009-6-14 09:37:56 | 显示全部楼层 来自 上海奉贤区
关注中,很有用的一个问题。
回复 不支持

使用道具 举报

发表于 2009-6-14 14:52:26 | 显示全部楼层 来自 加拿大
本帖最后由 iomega 于 2009-6-13 22:55 编辑

Here is a APDL code use the *MFOURIER function.
The original code is from: http://ansys.net/?mycat=search&mytype=Macros&mycategory=PostProc

There is another code named FFTDFT there for FFT in ANSYS, basically it rewrite the FFT code in ANSYS APDL.


Below is the source code:
C*****************************************************************************
C*****************************************************************************
C*** MACRO fxfrm08.mac, BILL BULAT, 12/11/96
C*** PRODUCES FOURIER XFORM OF TIME DOMAIN RESPONSE. RESULTING FOURIER
C*** COEFFICIENTS ARE READ INTO A POST26 VARIABLE (EVEN TERMS => REAL PART,
C*** ODD TERMS => IMAGINARY PART) AND AMPLITUDE IS PLOTTED VS FREQUENCY.
C*** UTILIZES ANSYS [*MFOURIER] COMMAND.
C******************************************************************************
C******************************************************************************
C*** MACRO USEAGE:
C***              fxfrm08, IR, IA, IB, FREQBEG, FREQEND
C***
C***   IR = RESULT VAR NUM TO WHICH FOUR COEFFICIENTS WILL BE WRITTEN
C***   IA = VAR NUM CONTAINING DISCRETE TRANS RESPONSES
C***   IB = VAR NUM WILL BE FILLED WITH FREQUENCIES TO WHICH COEFFICIENTS
C***        IN IR CORRESPOND (THIS IS FOR PLOTTING).
C***   FREQBEG = BEGINNING FREQUENCY OF PLOT
C***   FREQEND = HIGHEST FREQ FOR WHICH FOURIER COEFFICIENTS SHALL BE
C***             EVALUATED.
C******************************************************************************
C******************************************************************************

C*** USE FOLLOWING LINES ONLY IN GUI IMPLEMENTATION
*if,_z1,gt,0.5,then

C*** EVALUATE pi
*afun,rad
pi = 4*atan(1)

C*** DETERMINE # OF STORED TIME PTS, FINAL TIME
*get,n,vari,,nsets
*get,tfinal,vari,1,extr,vlast
dim = arg5*tfinal+1  *** DIMENSION FOR ARRAYS BASED ON MAX FREQ & tfinal
*if,dim,ge,n/2,then
dim = nint((n-2)/2)
*elseif,dim,le,1,then
dim = nint((n-2)/2)
*else
dim = nint(dim)
*endif

C*** ZERO OUT VAR# arg1 (IR)
filldata,arg1,1,n,1,0,0

C*** FILL VAR# arg3 (IB) WITH FREQUENCIES CORRESPONDING TO ck's
C*** THESE ARE 0,1/Tf,2/Tf,3/Tf,...
filldata,arg3,1,1,1,0
filldata,arg3,2,n,1,1/tfinal,1/tfinal

C*** DIMENSION ARRAYS FOR USE WITH *MFOURIER COMMAND
*get,dfnd,parm,mode,type
*if,dfnd,gt,-1,then
mode(1)=
*endif
*get,dfnd,parm,isym,type
*if,dfnd,gt,-1,then
isym(1)=
*endif
*get,dfnd,parm,theta,type
*if,dfnd,gt,-1,then
theta(1)=
*endif
*get,dfnd,parm,f_of_t,type
*if,dfnd,gt,-1,then
f_of_t(1)=
*endif
*get,dfnd,parm,ck,type
*if,dfnd,gt,-1,then
ck(1)=
*endif
*get,dfnd,parm,zero,type
*if,dfnd,gt,-1,then
zero(1)=
*endif
*dim,mode,,2*dim
*dim,isym,,2*dim
*dim,theta,,n
*dim,f_of_t,,n
*dim,ck,,2*dim
*dim,zero,,n

C*** FILL ARRAYS FOR USE WITH *MFOURIER COMMAND
*vfil,mode(1),ramp,0,1
*vfil,mode(dim+1),ramp,0,1
*vfil,isym(1),ramp,1,0
*vfil,isym(dim+1),ramp,-1,0
vget,theta(1),1             *** READ TIME (VAR 1) INTO ARRAY theta
*vfac,360/tfinal            *** NORMALIZE theta TO 360 DEG (FOR *MFOU)
*vop,theta(1),theta(1),add
vget,f_of_t(1),arg2
*vfil,zero(1),ramp,0,0

C*** ZERO OUT REAL & IMAG PARTS OF VAR# arg1 (IR) FOR BEFORE
C*** FILLING WITH NEW DATA
vput,zero(1),arg1,0,0 *** PUT REAL PART INTO VAR ARG1
vput,zero(1),arg1,0,1 *** PUT IMAG PART INTO VAR ARG1

C*** USE [*MFOURIER] COMMAND TO CALCULATE FOURIER COEFFICIENTS
*mfou,fit,ck(1),mode(1),isym(1),theta(1),f_of_t(1)
!*vfil,ck(dim+1),ramp,0

C*** PUT COEFFICIENTS (FREQ RESPONSES) INTO VAR# arg1
vput,ck(1),arg1,0,0 *** PUT REAL PART INTO VAR ARG1
vput,ck(dim+1),arg1,0,1 *** PUT IMAG PART INTO VAR ARG1

C*** ZERO OUT REAL PART OF VAR# arg1 (IR) FOR n > dim+1
C*** ([VPUT] CMD ERRONEOUSLY FILLS THIS PART OF VARIABLE @5.3)
filldata,arg1,dim+2,n,1,0,0

C*** PLOT RESPONSES vs FREQUENCY
xvar,arg3
plcp,0
/axl,x,FREQ
/axl,y,FOURIER XFORM

*if,arg5,ne,0,then
/xra,arg4,1*arg5
*else
/xra,arg4,dim/tfinal
*endif
plvar,arg1
/axl,x
/axl,y
xvar,1
plcp,2
/xra

C*** FOLLOWING LINES FOR CHECKING PUPOSES ONLY
C*** TEMPORARY CALCULATION OF AMPLITUDE (VAR#5) TO DETERMINE TIME OF MAX AMPL
realvar,5,3,,,real2
imagin,6,3,,,imag2
prod,5,5,5
prod,6,6,6
add,6,5,6
sqrt,5,6,,,ampl2

C*** FOLLOWING LINES FOR CHECKING PURPOSES ONLY
C*** REPORT REAL & IMAG COMPONENTS OF FXFRM @ MAX AMPLITUDE
!*get,scrapt,vari,5,extrem,tmax
!*get,scrapr,vari,3,rtime,scrapt
!*get,scrapi,vari,3,itime,scrapt
!*msg,ui,scrapr,scrapi
!real part: %G %/ imag part: %G

C*** USE FOLLOWING LINES ONLY IN GUI IMPLEMENTATION
*elseif,_z1,eq,0.5,then
*msg,ui
No time-history data to make Fourier Transform of.&
Create time-history plot first.
*endif
回复 不支持

使用道具 举报

发表于 2009-6-15 08:37:17 | 显示全部楼层 来自 黑龙江哈尔滨
18# iomega

这个也太复杂了啊
回复 不支持

使用道具 举报

 楼主| 发表于 2009-6-22 13:32:58 | 显示全部楼层 来自 黑龙江哈尔滨
确实太复杂了啊
回复 不支持

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-26 17:30 , Processed in 0.064386 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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