Composite_Micromechanics

Composite_Micromechanics

介绍

Composite_Micromechanics 类主要用来分析复合材料的微观力学行为,运算方法来自于Practical-Micromechanics,这是一个比较专业的微观复合材料分析工具,部分复合材料的宏观预测属性跟实际数据相差很少。

本意是将其中微观的复合材料的渐进损伤分析和有限元分析相结合,复合材料每层方向不同,当一层的树脂产生裂纹,其他层的纤维会进一步阻止裂纹的发展,线性分析难以观测到该效应。

类结构

输入 input:

  • Load : 应力或应变
  • Vi: 树脂和纤维交界体积率,没有则为空或者0
  • Vf: 纤维体积率
  • Interface: 交界材料
  • Matrix : 基底材料
  • Fiber : 纤维材料

参数 params:

  • Theory : 方法
  • RUCid : 晶格编号,参见附录
  • Name : 名称
  • DamageFactor : 破坏对应材料参数的折减系数
  • Damage : 开启微观力学的渐进损伤分析
  • Criterion : 失效准则

输出 output :

  • DamageResult : 损伤分析结果
  • MicroField: 微观晶格数据
  • SG: 力的方向矢量
  • Plyprops : 复合材料属性预测结果

案例

Stand-alone micromechanics effective properties (Flag=1)

采用不同方法估算复合材料的属性。

S=RMaterial('Composite');
mat=GetMat(S,[3,4]');
inputStruct.Vf=0.55;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
paramsStruct.Theory='All';
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
Plot(Ply);
PlotAlpha(Ply);

Stand-alone micromechanics effective properties using GMC (Flag=2)

采用GMC法估算复合材料属性。

S=RMaterial('Composite');
mat=GetMat(S,[3,4]');
inputStruct.Vf=0.55;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
paramsStruct.Theory='GMC';
paramsStruct.RUCid=26;% 2,7,26
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
Plot(Ply);
PlotAlpha(Ply);

Plot Local field (Flag=3)

S=RMaterial('Composite');
mat=GetMat(S,[3,4]');
inputStruct.Vf=0.55;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
inputStruct.Load.Type=[2,2,2,2,2,2];% 2-Stress 1-Strain
inputStruct.Load.Value=[0,1,0,0,0,0];
paramsStruct.Theory='MT';% 'Voigt' 'Reuss' 'MT' 'MOC' 'MOCu'
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
PlotMicroField(Ply);

SiC-SiC with interface BN_Coating using GMC RUCid=105 (Flag=4)

S=RMaterial('Composite');
mat=GetMat(S,[29,30,31]');
inputStruct.Vf=0.28;
inputStruct.Vi=0.13;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
inputStruct.Interface=mat{3,1};
paramsStruct.Theory='GMC';
paramsStruct.RUCid=105;
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
Plot(Ply);
PlotAlpha(Ply);

Stand-alone micromechanics effective properties using HFGMC (Flag=5)

采用HFGMC法估算复合材料属性。

S=RMaterial('Composite');
mat=GetMat(S,[29,30,31]');
inputStruct.Vf=0.28;
inputStruct.Vi=0.13;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
inputStruct.Interface=mat{3,1};
paramsStruct.Theory='HFGMC';
paramsStruct.RUCid=105;
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
Plot(Ply);
PlotAlpha(Ply);

HFGMC vs FEA (Flag=6)

HFGMC和有限元方法对比

S=RMaterial('Composite');
mat=GetMat(S,[1,2]');
inputStruct.Vf=0.5;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
inputStruct.Load.Type=[2,2,1,2,2,2];% 2-Stress 1-Strain
inputStruct.Load.Value=[0,0,0.02,0,0,0];
paramsStruct.RUCid=99;
paramsStruct.Theory='HFGMC';
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
PlotMicroField(Ply);

Progressive damage response using HFGMC and max stress criterion (Flag=7)

本例是微观状态下采用HFGMC方法做复合材料受剪切力作用下渐进损伤分析,可以看到树脂裂纹逐渐发展的过程,直到试件破坏,纤维没有起到承载作用,该方向的强度仅为35Mpa左右。

S=RMaterial('Composite');
mat=GetMat(S,[1,2]');
inputStruct.Vf=0.55;
inputStruct.Fiber=mat{1,1};
inputStruct.Matrix=mat{2,1};
inputStruct.Load.Type=[2,2,2,1,2,2];% 2-Stress 1-Strain
inputStruct.Load.Value=[0,0,0,0.02,0,0];
inputStruct.Load.NINC=400;
paramsStruct.RUCid=200;
paramsStruct.Theory='HFGMC';
paramsStruct.Damage=1;% Progressive damage analysis
paramsStruct.Criterion=1; % Failure criterion
Ply= method.Composite.Micromechanics(paramsStruct, inputStruct);
Ply=Ply.solve();
PlotMicroField(Ply);

参考文献

[1] Practical micromechanics of composite materials

附录

晶格种类编号


本网站基于Hexo 3-Hexz主题生成。如需转载请标注来源,如有错误请批评指正,欢迎邮件至 392176462@qq.com