Hashin Criterion

The Hashin criterion gives conditions to distinguish between matrix or fiber failure by tension or compression.

The implementation1is:
  • Fiber Tension σ1>0 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaqGdpWdamaaBaaaleaapeGaaGymaaWdaeqaaOWdbiabg6da+iaa icdaaaa@3A4E@

    FfiberT=σ1XT2+τ12S2 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaWGgbWdamaaDaaaleaapeGaamOzaiaadMgacaWGIbGaamyzaiaadkhaa8aabaWdbiaadsfaaaGccqGH9aqpdaqadaWdaeaapeWaaSaaa8aabaWdbiaabo8apaWaaSbaaSqaa8qacaaIXaaapaqabaaakeaapeGaamiwa8aadaWgaaWcbaWdbiaadsfaa8aabeaaaaaak8qacaGLOaGaayzkaaWdamaaCaaaleqabaWdbiaaikdaaaGccqGHRaWkdaqadaWdaeaapeWaaSaaa8aabaWdbiaabs8apaWaaSbaaSqaa8qacaaIXaGaaGOmaaWdaeqaaaGcbaWdbiaadofaaaaacaGLOaGaayzkaaWdamaaCaaaleqabaWdbiaaikdaaaaaaa@4D2D@

  • Fiber Compression σ1<0 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacqaHdpWCpaWaaSbaaSqaa8qacaaIXaaapaqabaGcpeGaeyipaWJa aGimaaaa@3AC4@

    FfiberC=σ1XC MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaWGgbWdamaaDaaaleaapeGaamOzaiaadMgacaWGIbGaamyzaiaadkhaa8aabaWdbiaadoeaaaGccqGH9aqpdaabdaWdaeaapeWaaSaaa8aabaWdbiaabo8apaWaaSbaaSqaa8qacaaIXaaapaqabaaakeaapeGaamiwa8aadaWgaaWcbaWdbiaadoeaa8aabeaaaaaak8qacaGLhWUaay jcSdaaaa@45C4@

  • Matrix Tension σ2>0 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacqaHdpWCpaWaaSbaaSqaa8qacaaIYaaapaqabaGcpeGaeyOpa4Ja aGimaaaa@3AC9@

    FmatrixT=σ2YT2+τ12S2 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaWGgbWdamaaDaaaleaapeGaamyBaiaadggacaWG0bGaamOCaiaadMgacaWG4baapaqaa8qacaWGubaaaOGaeyypa0ZaaeWaa8aabaWdbmaalaaapaqaa8qacqaHdpWCpaWaaSbaaSqaa8qacaaIYaaapaqabaaakeaapeGaamywa8aadaWgaaWcbaWdbiaadsfaa8aabeaaaaaak8qacaGLOaGaayzkaaWdamaaCaaaleqabaWdbiaaikdaaaGccqGHRaWkdaqadaWdaeaapeWaaSaaa8aabaWdbiabes8a09aadaWgaaWcbaWdbiaaigdacaaIYaaapaqabaaakeaapeGaam4uaaaaaiaawIcacaGLPaaapaWaaWbaaSqabeaapeGaaGOmaaaaaaa@4F36@

  • Matrix Compression σ2<0 MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacqaHdpWCpaWaaSbaaSqaa8qacaaIYaaapaqabaGcpeGaeyipaWJa aGimaaaa@3AC5@

    FmatrixC=σ22S2+τ12S2+σ22S21σ2YC MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaWGgbWdamaaDaaaleaapeGaamyBaiaadggacaWG0bGaamOCaiaadMgacaWG4baapaqaa8qacaWGdbaaaOGaeyypa0ZaaeWaa8aabaWdbmaalaaapaqaa8qacaqGdpWdamaaBaaaleaapeGaaGOmaaWdaeqaaaGcbaWdbiaaikdacaWGtbaaaaGaayjkaiaawMcaa8aadaahaaWcbeqaa8qacaaIYaaaaOGaey4kaSYaaeWaa8aabaWdbmaalaaapaqaa8qacaqGepWdamaaBaaaleaapeGaaGymaiaaikdaa8aabeaaaOqaa8qacaWGtbaaaaGaayjkaiaawMcaa8aadaahaaWcbeqaa8qacaaIYaaaaOGaey4kaSYaamWaa8aabaWdbmaabmaapaqaa8qadaWcaaWdaeaapeGaae4Wd8aadaWgaaWcbaWdbiaaikdaa8aabeaaaOqaa8qacaaIYaGaam4uaaaaaiaawIcacaGLPaaapaWaaWbaaSqabeaapeGaaGOmaaaakiabgkHiTiaaigdaaiaawUfacaGLDbaadaWcaaWdaeaapeGaae4Wd8aadaWgaaWcbaWdbiaaikdaa8aabeaaaOqaa8qacaWGzbWdamaaBaaaleaapeGaam4qaaWdaeqaaaaaaaa@5DDC@

Syntax

HashinFT(tensor,xt,xc,yt,yc,s,sets,plies,elems,parts,props,pool_name,layer_index,opt_str)

Arguments

tensor
Stress table
xt
Allowable tensile stress in ply material direction 1
xc
Allowable compressive stress in ply material direction 1
yt
Allowable tensile stress in ply material direction 2
yc
Allowable compressive stress in ply material direction 2
s
Allowable in-plane shear stress
sets
Set table (D=NULL)
plies
Ply table (D=NULL)
elems
Element table (D)
parts
Part table (D)
props
Property table (D)
pool_name
Pool name (D=@current_pool)
layer_index
Layer index (D=@current_slice_index)
opt_str
This is an optional argument specifying failure mode. Option can be Fiber or Matrix.

If opt_str is not passed, the resultant failure index is reported as:

Findex=maxFfiber,Fmatrix MathType@MTEF@5@5@+=feaahqart1ev3aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLnhiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=xfr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaaeaaaaaaaaa8qacaWGgbWdamaaBaaaleaapeGaamyAaiaad6gacaWGKbGaamyzaiaadIhaa8aabeaak8qacqGH9aqpciGGTbGaaiyyaiaacIhadaWadaWdaeaapeGaamOra8aadaWgaaWcbaWdbiaadAgacaWGPbGaamOyaiaadwgacaWGYbaapaqabaGcpeGaaiilaiaadAeapaWaaSbaaSqaa8qacaWGTbGaamyyaiaadshacaWGYbGaamyAaiaadIhaa8aabeaaaOWdbiaawUfacaGLDbaaaaa@4F71@

1
Formula implemented in HyperView core are reported.