Simufact.Welding 6.0 热源二次开发初步教程1 主要目的:开始随时间变化的焊接热源,如脉冲热源2 基本要求:1)脉冲热源频率:8Hz2)脉宽30ms3)其它略3 软件安装1)simufact.welding 6.02)VS20103)Intel Visual Fortran Composer XE 20133 基本步骤3.1 软件设置安装完之后需要配置path、Lib和include三个环境变量。
以下列出环境变量值作为参考(需要根据VS和fortran的安装位置不同进行相应的修改)。
---注:以下部分为参考网上内容,需要根据具体实际修改,如下面采用的是VS2012,XE2015,根据需要修改Path:C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\ToolsC:\Program Files (x86)\Intel\Composer XE 2015\redist\intel64\mklC:\Program Files (x86)\Intel\Composer XE 2015\bin\intel64C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDEC:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\binC:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\x64C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\BinC:\Program Files (x86)\Intel\MPI\5.0.1.037\intel64\binC:\Program Files (x86)\Intel\Trace Analyzer and Collector\9.0.1.035\binLib:C:\Program Files (x86)\Intel\Composer XE 2015\compiler\lib\intel64C:\Program Files (x86)\Intel\Composer XE 2015\mkl\lib\intel64C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\libC:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Lib\x64C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\LibINCLUDE:C:\Program Files (x86)\Intel\Composer XE 2015\compiler\includeC:\Program Files (x86)\Intel\Composer XE 2015\mkl\includeC:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\includeC:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Includea3.2 常规建立并设置simufact.welding工程建立如下常规的simufact.welding工程(常规建立过程省略)图1 常规工程主要坐标系为:沿X方向宽50mm,沿y方向板厚10mm,沿z方向长度50mm,焊接沿着z 负方向,焊接起始点坐标(50,10,-50)【单位mm】,建立对称的一半模型。
3.3 建立.f子函数subroutine uweldflux(f,temflu,mibody,welddim,time)c f(1) flux value (to be defined)c f(2) derivative of flux with respect to temperaturec (to be defined; optional, this might improve thec convergence behavior)cc temflu(1) estimated temperaturec temflu(2) previous volumetric fluxc temflu(3) temperature at beginning of incrementc temflu(4,5,6)integration point coordinatesc mibody(1) element numberc mibody(2) flux typec mibody(3) integration point numberc mibody(4) flux index - not used if table inputc mibody(5) not usedc mibody(6) =1 : heat transferc =2 : joulec =3 : bearingc =4 : electrostaticc =5 : magnetostaticc =6 : acousticc mibody(7) internal element numberc mibody(8) layer number for heat transfer shells elementsc and volume fluxc mibody(9) Not usedc mibody(10) boundary condition number if table inputc time timecdimension mibody(*),temflu(*),welddim(*)real*8 finteger mibodyreal*8 temflu,time,welddimc* * * * * *c OPEN(UNIT=10,FILE='HELLO.TXT',POSITION='APPEND')a=0.003b=0.003c=0.003v=0.01T0=0.125temp=0.03xis=1zq=ceiling(time/T0)if(abs(MOD(time-temp,T0)).LT.1e-6) thenxis=0c write(10,*) time, 111else if(abs(MOD(time,T0)).LT.1e-6) thenxis=1c write(10,*) time,222else if ((time.LT.(zq*T0)).and.(time.GT.((zq-1)*T0+temp))) then xis=0c write(10,*) time, 333elsexis=1c write(10,*) time, 444end ifd=0.05-v*timeq=7000*0.7pi=3.14x=temflu(4)y=temflu(5)z=temflu(6)mibody(6)=1y0=0.009x0=0.05heat=6*sqrt(3.0)*q/(a*b*c*pi)ex=exp(-3*(z-d)**2/c**2-3*(y-y0)**2/b**2-3*(x-x0)**2/a**2)f=heat*ex*xisc write(10,*) time, xis,fc close(10)returnend并存为文件名rey.f33.4 开始子函数运行1)点击常规项目的运行按钮图2 点击运行按钮点击后出现运行对话框,不用管它,直接关闭。
图3 运行对话框(直接关闭)2)此时找到你常规工程下的_Run_文件夹位置并打开该文件夹图4 该工程的_Run_文件夹会发现该文件夹下面有Process.dat文件和run.bat文件。
3)用记事本方式打开并修改Process.dat文件(此步不可少!)找到“WELD FLUX - Definitions of Motion and Flux Parameters for Weld Heat Source”这一行,并修改这一行下面的第5行第三列的值改为3,如下图中的6改为3图5 修改前图6 修改后修改完成后保存。
4)用记事本打开并修改run.bat文件图7 修改前run.bat中的call后面为你的simufact.welding6.0安装后run_sfMarc.bat的位置我的上述内容改为:call"E:\software\special\simufact6\simufact\welding\6.0\solver\simufact\sfMarc\sf_t ools\run_sfMarc.bat" -nthread_solver 2 -nthread_elem 2 -j F:\study\softwarestudy\software\simufact\marc_link\marc\Process\_Run_\Process.d at -u F:\study\softwarestudy\software\marc\udf_weldtool\rey.f -save yes需要说明的是:-j 后面增加刚才修改的Process.dat的位置-u 后面增加刚才rey.f文件的位置增加-save yes修改完成后并保存退出5)命令运行run.bat图8 点击红色框中的黑色小三角并选择“Open a shell”图9 点击红色框中的黑色小三角并选择“Open a shell”在出现的对话框中输入“run.bat”并回车运行一段时间后可以看到Results出现,即可得到想要的结果。
热源的脉冲效果如下:。