fsi abaqus 耦合计算 简单说明

Upload: zhiqiang-gu

Post on 08-Jul-2018

282 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/19/2019 FSI Abaqus

    1/23

    www.cd-adapco.com

    STAR-CCM+ with v8.06 / Abaqus Co-Simulation with 6.13

    简单说明

    May 2013

  • 8/19/2019 FSI Abaqus

    2/23

    概要

    •   引言

    •   必要的版本

    •   必要的程序库

    •   模型描述

    • STAR-CCM+设定

    •   修正Abaqus输入文件

    •   实行Co-Simulation计算

    •   其他

  • 8/19/2019 FSI Abaqus

    3/23

    引言

    背景

    • STAR-CCM+v7.04以及以后的版本、都可以与Abaqus进行双向的流固耦合解析计算

    •   许多参数设置可以在GUI界面中进行设置,操作更为简单快捷• STAR-CCM+与Abaqus可以自动的进行相互间数据的传递

    •   为了实现双向流固耦合计算,需要使用Abaqus的Co-simulation功能,Abaqus的这一功能需要

    特定的licence

    • STAR-CCM+不需要特定的licence

    目的

    •   使用现有的模型,详细介绍使用STAR-CCM+与Abaqus进行双向流固耦合计算设置的步骤

    •   讲解相关物理模型参数的含义,注意在设定过程中的关键步骤

  • 8/19/2019 FSI Abaqus

    4/23

    要求的版本

    & 环境变量

    •   要求的版本

    • STAR-CCM+:7.04.006或者更高版本•   Abaqus:6.12-1或者更高

    •   需要设定以下环境变量的路径

    • setenvABAQUS/u/netapps/abaqus/6.12-1/Commands

    • setenvSIMULIA_CSE_LIBS/u/netapps/abaqus/6.12-1

    • setpath=(.$ABAQUS$SIMULIA_CSE_LIBS$path)

  • 8/19/2019 FSI Abaqus

    5/23

    模型描述

    •   流体分析与结构分析都是非定常分析

    •   双向流固耦合解析计算

    • STAR-CCM+开始进行流场的计算• STAR-CCM+将压力以及剪切力传递给Abaqus

    • Abaqus根据耦合界面的载荷进行解析计算

    • Abaqus把位移量传递给STAR-CCM+

    • STAR-CCM+使用“Morpher”功能,根据Abaqus计算出来的位移量进行网格的移动

    • STAR-CCM+计算更新

    •   重复上面的步骤

    •   耦合求解的类型

    •   隐式求解:在时间步长内进行数据的相互交换

    •   显式求解:在时间步长结束时进行数据的相互交换

  • 8/19/2019 FSI Abaqus

    6/23

    流体计算域 固体计算域

    流体

    空气

    固体

    比较柔软的线性材料

    模型描述

    密闭空间

    FSI界面

    固定壁面

    固定

    对称面边界

    FSI界面

  • 8/19/2019 FSI Abaqus

    7/23

    物理模型设置

    设置有效的耦合计算解析模型•   打开ccmsample_start.sim文件

    • Continua->Physics 1,右击打开,选择“Selectmodels”

    •   选择“Co-Simulation”•   勾选“Auto-selectrecommendedmodels”选项,选择“AbaqusCo-Simulation”模型

  • 8/19/2019 FSI Abaqus

    8/23

    增加

    Co-Simulation计算模型

    • 点击Co-Simulation,右击选择“New”

    •   增加“AbaqusCo-Simulation1”选项

    •   以下各窗口的属性设置如下所示

  • 8/19/2019 FSI Abaqus

    9/23

    Co-Simulation参数设置(1)

    •   设定“Abaqus Co-Simulation1”的参数

    •   导出的场函数如下

    Pressure,WallShearStress

    •   导入的常函数如下

    NodalDisplacement

    •  流固耦合边界:指定载荷与位移数据交换的边界

    Plate_FSI

    •   当前的工作名:任意

     计算时的文件名

    (JobName.sim)

    •   输出文件

     在Abaqus生成的“*.inp”文件中指定了文件输出

  • 8/19/2019 FSI Abaqus

    10/23

    •   耦合计算的方法   选择“显式求解”或者“隐式求解”(本算例选择隐式求解)

    •   时间推进的顺序   时间推进的顺序由那一边先进行求解决定

      选择“Abaqus Leads”将会更有利于计

    算的收敛

    •   耦合计算的通讯方法   在这里,可以控制耦合计算的时间   然而,流体解析与固体解析选用同样

    的时间步长,对于计算的收敛有利•   如果选用同样的时间步长,选择“Constant”即可

    •   指定ABAQUS的单位

      与STAR-CCM+的单位系统相同

    Co-Simulation参数设置(2)

  • 8/19/2019 FSI Abaqus

    11/23

    设置Morpher 

    •   设置Morpher参数使网格能够正常变形

    • Tool->选择Motion右击,选择New

    •   选择Morphing

    • Regions->Region1->PhysicalValues->MotionSpecification,指定Motion的类型为“Morphing”

  • 8/19/2019 FSI Abaqus

    12/23

    Morpher 边界条件

    •   对于壁面,Morpher默认的设置为Fixed

    •   同样的,壁面在平面内的运动也被限制

    •   壁面需要设置为“Abaqus Co-Simulation”,才可以实现

    载荷⇔位移的变化

    Regions->Boundaries->Plate_FSI-

    >PhysicalConditions->选择“Morpher”

      将Method改为“Abaqus Co-Simulation”

  • 8/19/2019 FSI Abaqus

    13/23

    修正

     Abaqus输入文件

    •   通常设置Abaqus为非定常计算

    •   “时间步长”与“最大物理时间”与流体设置相同

      流固耦合计算的时间步长,推荐流体解析与固体解析使用同样的时间步长

    •   在Abaqus的输入文件中设置出口

    •   增加以下的文本内容

    **OUTPUTREQUESTS***Output,field,timeinterval=0.05,timemarks=yes*nodeoutputU,CF,*elementoutputS,***CO-SIMULATION,NAME=ccmsample,PROGRAM=Multiphysics,CONTROLS=controls

    *CO-SIMULATIONREGION,TYPE=SURFACE,EXPORTASSEMBLY_sfsi_interface,U*CO-SIMULATIONREGION,TYPE=SURFACE,IMPORTASSEMBLY_sfsi_interface,CF***CO-SIMULATIONCONTROLS,NAME=controls,CouplingScheme=iterative,SchemeModifier=Lead,StepSize=0.05,TIMEINCR=Subcycle,TIMEMARK=YES***EndStep

  • 8/19/2019 FSI Abaqus

    14/23

     Abaqus输入文件(.inp) 概览

    *Heading

    **

    ** Plate ViV Analysis

    ** Units: m, kg, s

    **

    *Node

    1, 0.00249999994, -0.0399999991, 0.

    2, 0.00249999994, -0.0350000001, 0.

    ...

    *Element, type=C3D8R, elset=plate

    1, 358, 359, 376, 375, 1, 2, 19, 18

    2, 359, 360, 377, 376, 2, 3, 20, 19

    ...

    *Solid Section, elset=plate, material=Matl-1

    ...

    **

    *Surface, type=ELEMENT, name=fsi_interface

    fsi_interface_S1, S1

    ...

    ***Material, name=Matl-1

    *Elastic

    38.4e6, 0.3

    *Density

    4096

    **

    ...

    ...

    **

    *Step, name=Step-1, nlgeom=YES, inc=1000000

    *Dynamic, haftol=1.0e5

    5e-4, 0.1 , 1e-6 , 5e-4

    **

    *Restart, write, num=1

    **

    *Output, field, time interval=4e-3

    *Node Output

    U, CF

    *Element Output

    S,

    **

    *Co-Simulation, name=plateviv,

     program=MULTIPHYSICS, controls=c1

    *Co-Simulation Region, type=SURFACE, export

    fsi_interface, U

    *Co-Simulation Region, type=SURFACE, import

    fsi_interface, CF

    ***Co-Simulation Controls, name=c1, coupling

    scheme=GAUSS-SEIDEL, scheme modifier=LEAD,

    step size=5e-4, time incr=SUBCYCLE

    **

    *End Step

    -   使用文本编辑器增加耦合计算需要添加的项目

    声明单位

    时间步长定

    耦合算法

    网格

    固体材料属性定

    输出以及restart文件设

    Co-Simulation

    关键字

    FSI 界面

  • 8/19/2019 FSI Abaqus

    15/23

     Abaqus输入文件(.inp)   详解(1)

    单位,载荷传递边界条件以及物性设置*Heading

    **

    ** Plate ViV Analysis

    ** Units: m, kg, s

    **

    *Node

    1, 0.00249999994, -0.0399999991, 0.

    2, 0.00249999994, -0.0350000001, 0.

    ...

    *Element, type=C3D8R, elset=plate

    1, 358, 359, 376, 375, 1, 2, 19, 18

    2, 359, 360, 377, 376, 2, 3, 20, 19

    ...

    *Solid Section, elset=plate, material=Matl-1

    ...

    **

    *Surface, type=ELEMENT, name=fsi_interface

    fsi_interface_S1, S1

    ...

    **

    *Material, name=Matl-1*Elastic

    38.4e6, 0.3

    *Density

    4096

    **

    ...

    必须注明单位、单位与在CCM+中指定的单位 致

    传递载荷的边界条件列出其名称

    在本算例中,名称为“Plate_FSI”

    记录物性值杨氏模量、泊松比、密度注意单位

  • 8/19/2019 FSI Abaqus

    16/23

     Abaqus输入文件(.inp)   详解(2)

    设置相关的时间参数

    ***St ep, name=St ep- 1, nlgeom=YES, inc=1000000*Dynami c, haftol=1.0e5

    5e-4, 0.1 , 1e-6 , 5e-4

    指定时间步长

    时间步长   最大内部时间步长小内部时间步长大物理时间

    是否有非线性效果最大increment数

    Increment

    残差的允许值

  • 8/19/2019 FSI Abaqus

    17/23

     Abaqus输入文件(.inp)   详解(3)

    设置相关的时间参数設定項目 内容 设定方法

    时间步长 *Dynami c, haf t ol =1. 0e55e-4, 0. 1, 1e- 6, 5e- 4

    •   非定常分析的时间步长   •   与流体解析的时间步长相同

    最大物理时间 *Dynami c, haf t ol =1. 0e55e- 4,  0.1, 1e- 6, 5e- 4

    •   实际计算的物理时间   •   与流体的最大物理时间相同

    最小内部

    时间步长

    *Dynami c, haf t ol =1. 0e55e- 4, 0. 1,  1e-6 , 5e- 4

    •   在一个时间步长内,最小的时间步长

    •   比时间步长小2-4个数量级

    最大内部

    时间步长

    *Dynami c, haf t ol =1. 0e55e- 4, 0. 1, 1e- 6,  5e-4

    •   在一个时间步长内,最大的时间步长

    •   流体解析与固体解析的非定常时间步长相同

    非线性效果 *Step, name=Step- 1,nlgeom=YES , i nc=1000000

    •   是否包含大位移以及大变形的非线性效果

    • nl geom=YES:考虑非线性变形• nl geom=NO:不考虑非线性变形

    最大increment数

    *Step, name=Step- 1,nl geom=YES, inc=1000000

    •   一个时间步长内迭代的最大数目

    •   「最大/最小内部时间步长」在上述参数之前添加该值

    •   “ Abaqus CAE”中没有写入,需要使用文本编辑器进行添加(默认设定为100)

    incrment中残

    差的允许值

    *Dynami c, haftol=1.0e5 

    5e- 4, 0. 1, 1e- 6, 5e- 4

    •   时间步长内允许的残差(误差)

    的最大值

    • HAFTOL的单位是力的单位,允许误差设置的

    比较大的话,计算结果的误差也会变得相应增大

    •   该值设置为问题中包含力的10倍到100倍之间即可

    •   没有必要注明,可以不用写(默认会自动进行判定)

  • 8/19/2019 FSI Abaqus

    18/23

     Abaqus输入文件(.inp) 详解(4)

    设置結果输出

    EX1)

    *Restart, write, num=1

    **

    *Output, field, time interval=4e-3

    *Node Output

    U, CF

    *Element Output

    S,

    **

    控制

    restart

    文件输出的间隔

    控制结果文件的输出

    EX2)

    ** OUTPUT REQUESTS***Rest ar t , wr i t e, f r equency=0

    **** FI ELD OUTPUT: F- Out put - 1

    ***Out put , f i el d, var i abl e=PRESELECT, f r equency=100**** HI STORY OUTPUT: H- Output - 1***Out put , hi st or y, var i abl e=PRESELECT

    •   “PRESELECT”是ABAQUS默认的输出变量•   输出间隔通过“frequency”或者“timeinterval”进行指定

  • 8/19/2019 FSI Abaqus

    19/23

     Abaqus输入文件(.inp) 详解(5)

    设置

    Co-Simulation

    **

    *Co-Simulation, name=plateviv, program=MULTIPHYSICS, controls=c1

    *Co-Simulation Region, type=SURFACE, export

    fsi_interface, U

    *Co-Simulation Region, type=SURFACE, import

    fsi_interface, CF

    **

    *Co-Simulation Controls, name=c1, coupling scheme=GAUSS-SEIDEL, scheme modifier=LEAD,

    step size=5e-4, time incr=SUBCYCLE

    **

    时间步长(流体与结构耦合计算选用同样的时间步长,对于计算的收敛有利)

    传递载荷的边界名称

    基于 页的对应表、STAR-CCM+与Abaqus

    分别有参数进行对应

  • 8/19/2019 FSI Abaqus

    20/23

     Abaqus输入文件(.inp)   详解(6)

    设置

    Co-Simulation

    STAR-CCM+设定

    Abaqus输入

    文件

    STAR-CCM+

    Abaqus对应*两者的设定不一致,将会得到不正确的流场

  • 8/19/2019 FSI Abaqus

    21/23

    开始计算

    •   Solution->Run,开始计算

  • 8/19/2019 FSI Abaqus

    22/23

    其他

      .simh文件未定义、File->Auto Export中设置非定常结果按照 定的时间

    间隔输出

     流体解析计算的初值、可以使用同样条件 定常分析的结果

     —  非定常计算开始的时候压力变化很大,容易传递异常的载荷

      Abaqus的FSI边界(载荷 位移数据传递界面),所有的边界使用 个名

    称即可

     —  不需要设定多个FSI的边界名

  • 8/19/2019 FSI Abaqus

    23/23

    使用

    Co-Simulation进行单向流固耦合计算

      修正双向流固耦合的设置、就可以进行单向流固耦合的分析了•   流体载荷→→→结构分析:有效•   流体载荷←←←结构分析:无效

      流体解析的导入以及结构解析的导出不需要再进行设置

      去除meshmorpher•   “Tool->Motion->删除Morphing

      使用显式求解,不适用隐式求解• STAR-CCM+:Co-Simulation->AbaqusCo-Simulation1->CouplingScheme• Abaqus:输入文件的耦合方法为“GAUSS-SEIDEL”

    **OUTPUTREQUESTS***Output,field,timeinterval=0.05,timemarks=yes*nodeoutputU,CF,*elementoutputS,***CO-SIMULATION,NAME=ccmsample,PROGRAM=Multiphysics,CONTROLS=controls  CO-SIMULATION REGION, TYPE=SURFACE, EXPORT

    ASSEMBLY_sfsi_interface, U

    *CO-SIMULATIONREGION,TYPE=SURFACE,IMPORTASSEMBLY_sfsi_interface,CF***CO-SIMULATIONCONTROLS,NAME=controls,Coupling Scheme=GAUSS-SEIDEL,

    SchemeModifier=Lead,StepSize=0.05,TIMEINCR=Subcycle,TIMEMARK=YES***EndStep

    不用导入