#----------------------------------------------------------------------------------------
# fichier a inclure dans un autre fichier gnuplot
#   => syntaxe : load 'gnu_loi_MAT_hyper_W_GENE'
#----------------------------------------------------------------------------------------
# contient les fonctions specifiques a la loi MAT_hyper_W_GENE (fichier parametres : MAT_hyper_W_GENE.make_W)
#----------------------------------------------------------------------------------------


#----------------------------
#(potSph_1_MAT_hyper_W_GENE) potentiel W_sph_3, invariant Iv_n_v1
C__K_potSph_1_MAT_hyper_W_GENE = 6000. #W_sph_3
C__gamma_potSph_1_MAT_hyper_W_GENE = 0.1666666667 #W_sph_3
C__m_potSph_1_MAT_hyper_W_GENE = 2. #W_sph_3
C__n_potSph_1_MAT_hyper_W_GENE = 0. #Iv_n_v1

W_potSph_1_MAT_hyper_W_GENE(l1,l2,l3) = V(l1,l2,l3)*C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**C__m_potSph_1_MAT_hyper_W_GENE
d1_dV_W_potSph_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**C__m_potSph_1_MAT_hyper_W_GENE + V(l1,l2,l3)*C__m_potSph_1_MAT_hyper_W_GENE*C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**(C__m_potSph_1_MAT_hyper_W_GENE-1.)*(V(l1,l2,l3)**-1)
d2_dV_W_potSph_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**(C__m_potSph_1_MAT_hyper_W_GENE-1.)*(V(l1,l2,l3)**-1)+C__m_potSph_1_MAT_hyper_W_GENE*C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**(C__m_potSph_1_MAT_hyper_W_GENE-1.)*(V(l1,l2,l3)**-1)+V(l1,l2,l3)*(C__m_potSph_1_MAT_hyper_W_GENE*(C__m_potSph_1_MAT_hyper_W_GENE-1.)*C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**(C__m_potSph_1_MAT_hyper_W_GENE-2.)*(V(l1,l2,l3)**-1)**2+C__m_potSph_1_MAT_hyper_W_GENE*C__gamma_potSph_1_MAT_hyper_W_GENE*C__K_potSph_1_MAT_hyper_W_GENE*(log(V(l1,l2,l3)))**(C__m_potSph_1_MAT_hyper_W_GENE-1.)*(-V(l1,l2,l3)**-2))
#----------------------------

#----------------------------
#(potDev_1_MAT_hyper_W_GENE) potentiel W_dev_2, invariant Ibar_n_v1
C__mu_potDev_1_MAT_hyper_W_GENE = 5. #W_dev_2
C__gamma_potDev_1_MAT_hyper_W_GENE = 1. #W_dev_2
C__n_potDev_1_MAT_hyper_W_GENE = 1. #Ibar_n_v1
C__c_r_potDev_1_MAT_hyper_W_GENE = 1.e-12 #Ibar_n_v1
C__w1_potDev_1_MAT_hyper_W_GENE = 1. #Ibar_n_v1
C__w2_potDev_1_MAT_hyper_W_GENE = 1. #Ibar_n_v1

W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*((C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**C__n_potDev_1_MAT_hyper_W_GENE)
d1_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE*C__w1_potDev_1_MAT_hyper_W_GENE*(C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**(C__n_potDev_1_MAT_hyper_W_GENE-1.))
d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE*C__w2_potDev_1_MAT_hyper_W_GENE*(C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**(C__n_potDev_1_MAT_hyper_W_GENE-1.))
d2_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE-1.)*C__w1_potDev_1_MAT_hyper_W_GENE**2*(C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**(C__n_potDev_1_MAT_hyper_W_GENE-2.))
d2_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE-1.)*C__w2_potDev_1_MAT_hyper_W_GENE**2*(C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**(C__n_potDev_1_MAT_hyper_W_GENE-2.))
d2_dIbar_1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = C__gamma_potDev_1_MAT_hyper_W_GENE*C__mu_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE*(C__n_potDev_1_MAT_hyper_W_GENE-1.)*C__w1_potDev_1_MAT_hyper_W_GENE*C__w2_potDev_1_MAT_hyper_W_GENE*(C__w1_potDev_1_MAT_hyper_W_GENE*Ibar_1(l1,l2,l3)+C__w2_potDev_1_MAT_hyper_W_GENE*Ibar_2(l1,l2,l3)-3.*(C__w1_potDev_1_MAT_hyper_W_GENE+C__w2_potDev_1_MAT_hyper_W_GENE)+C__c_r_potDev_1_MAT_hyper_W_GENE)**(C__n_potDev_1_MAT_hyper_W_GENE-2.))

S11_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = 2.*V(l1,l2,l3)**-1*((d1_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                         Ibar_1(l1,l2,l3)*d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3))*Bbarre_dev_11(l1,l2,l3) - \
                         d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)*Bbarre_Bbarre_dev_11(l1,l2,l3))
S22_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = 2.*V(l1,l2,l3)**-1*((d1_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                         Ibar_1(l1,l2,l3)*d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3))*Bbarre_dev_22(l1,l2,l3) - \
                         d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)*Bbarre_Bbarre_dev_22(l1,l2,l3))
S33_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) = 2.*V(l1,l2,l3)**-1*((d1_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                         Ibar_1(l1,l2,l3)*d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3))*Bbarre_dev_33(l1,l2,l3) - \
                         d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)*Bbarre_Bbarre_dev_33(l1,l2,l3))
#----------------------------


#--------------------------------
# alias vers derivees potentiel
#    - Wv = d W / dV
#    - Wvv = d2 W / dV 2
#    - Wp_1 = d W / d Ibar_1
#    - Wp_2 = d W / d Ibar_2
#    - Wpp_1 = d2 W / d Ibar_1 2
#    - Wpp_2 = d2 W / d Ibar_2 2
#    - Wpp_12 = d2 W / d Ibar_1 / d Ibar_2
#--------------------------------
Wv_MAT_hyper_W_GENE(l1,l2,l3) = \
    d1_dV_W_potSph_1_MAT_hyper_W_GENE(l1,l2,l3)
Wvv_MAT_hyper_W_GENE(l1,l2,l3) = \
    d2_dV_W_potSph_1_MAT_hyper_W_GENE(l1,l2,l3)
Wp_1_MAT_hyper_W_GENE(l1,l2,l3) = \
    d1_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
Wp_2_MAT_hyper_W_GENE(l1,l2,l3) = \
    d1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
Wpp_1_MAT_hyper_W_GENE(l1,l2,l3) = \
    d2_dIbar_1_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
Wpp_2_MAT_hyper_W_GENE(l1,l2,l3) = \
    d2_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) = \
    d2_dIbar_1_dIbar_2_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
#--------------------------------


#--------------------------------
# pression hydro et tenseur dev
#--------------------------------
hydro_W_MAT_hyper_W_GENE(l1,l2,l3) = Wv_MAT_hyper_W_GENE(l1,l2,l3)
S11_W_MAT_hyper_W_GENE(l1,l2,l3) = \
    S11_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
S22_W_MAT_hyper_W_GENE(l1,l2,l3) = \
    S22_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
S33_W_MAT_hyper_W_GENE(l1,l2,l3) = \
    S33_W_potDev_1_MAT_hyper_W_GENE(l1,l2,l3)
#--------------------------------


#--------------------------------
# contrainte totale
#--------------------------------
SIG11_W_MAT_hyper_W_GENE(l1,l2,l3) = hydro_W_MAT_hyper_W_GENE(l1,l2,l3) + S11_W_MAT_hyper_W_GENE(l1,l2,l3)
SIG22_W_MAT_hyper_W_GENE(l1,l2,l3) = hydro_W_MAT_hyper_W_GENE(l1,l2,l3) + S22_W_MAT_hyper_W_GENE(l1,l2,l3)
SIG33_W_MAT_hyper_W_GENE(l1,l2,l3) = hydro_W_MAT_hyper_W_GENE(l1,l2,l3) + S33_W_MAT_hyper_W_GENE(l1,l2,l3)
#--------------------------------


#----------------------------------------------------
# Kt en fonction de derivee seconde potentiel (Wvv)
# et derivee temporelle de pression hydro : -p_point = Kt*V_point/V = Kt*trace(D)
#----------------------------------------------------
Kt_MAT_hyper_W_GENE(l1,l2,l3) = V(l1,l2,l3)*Wvv_MAT_hyper_W_GENE(l1,l2,l3)
mp_point_MAT_hyper_W_GENE(l1,l2,l3,l1_point,l2_point,l3_point) = Kt_MAT_hyper_W_GENE(l1,l2,l3)*trace_D(l1,l2,l3,l1_point,l2_point,l3_point)
#----------------------------------------------------


#----------------------------------------------------
# derivee temporelle deviateur contrainte : devSIG_point
#----------------------------------------------------
#composante 11
devSIG_11_point_MAT_hyper_W_GENE(l1,l2,l3,l1_point,l2_point,l3_point) = \
V(l1,l2,l3)**-1 * \
( \
\
2.*Bbarre_dev_11(l1,l2,l3) * \
( \
 -trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
 +2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               2.*Wpp_12_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) + \
                                                               Wp_2_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)**2 \
                                                              ) \
 -2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                                      Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                                     ) \
) + \
\
2.*Bbarre_Bbarre_dev_11(l1,l2,l3) * \
( \
  trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
 -2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                              ) \
 +2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*Wpp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) + \
\
2.*Bbarre_Dbarre_dev_11(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 2*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
) + \
\
2.*Bbarre_Bbarre_Dbarre_dev_11(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 -4.*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) \
\
)

#composante 22
devSIG_22_point_MAT_hyper_W_GENE(l1,l2,l3,l1_point,l2_point,l3_point) = \
V(l1,l2,l3)**-1 * \
( \
\
2.*Bbarre_dev_22(l1,l2,l3) * \
( \
 -trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
 +2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               2.*Wpp_12_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) + \
                                                               Wp_2_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)**2 \
                                                              ) \
 -2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                                      Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                                     ) \
) + \
\
2.*Bbarre_Bbarre_dev_22(l1,l2,l3) * \
( \
  trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
 -2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                              ) \
 +2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*Wpp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) + \
\
2.*Bbarre_Dbarre_dev_22(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 2*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
) + \
\
2.*Bbarre_Bbarre_Dbarre_dev_22(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 -4.*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) \
\
)

#composante 33
devSIG_33_point_MAT_hyper_W_GENE(l1,l2,l3,l1_point,l2_point,l3_point) = \
V(l1,l2,l3)**-1 * \
( \
\
2.*Bbarre_dev_33(l1,l2,l3) * \
( \
 -trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
 +2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               2.*Wpp_12_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) + \
                                                               Wp_2_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)**2 \
                                                              ) \
 -2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                                      Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                                     ) \
) + \
\
2.*Bbarre_Bbarre_dev_33(l1,l2,l3) * \
( \
  trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
 -2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                              ) \
 +2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*Wpp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) + \
\
2.*Bbarre_Dbarre_dev_33(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 2*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
) + \
\
2.*Bbarre_Bbarre_Dbarre_dev_33(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 -4.*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) \
\
)
#----------------------------------------------------


#----------------------------------------------------
# Gt = 1/2 * (devSIG : Dbarre) / (Dbarre : Dbarre)
#----------------------------------------------------
Gt_MAT_hyper_W_GENE(l1,l2,l3,l1_point,l2_point,l3_point) = \
1./(2.*V(l1,l2,l3)) * 1./trace_Dbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point) * \
(\
2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 -trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
 +2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_1_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               2.*Wpp_12_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) + \
                                                               Wp_2_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)**2 \
                                                              ) \
 -2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                                      Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                                     ) \
) + \
\
2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
  trace_D(l1,l2,l3,l1_point,l2_point,l3_point)*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
 -2.*trace_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*(Wpp_12_MAT_hyper_W_GENE(l1,l2,l3) + \
                                                               Wpp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3) \
                                                              ) \
 +2.*trace_Bbarre_Bbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point)*Wpp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) + \
\
2.*trace_Bbarre_Dbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 2*(Wp_1_MAT_hyper_W_GENE(l1,l2,l3) + Wp_2_MAT_hyper_W_GENE(l1,l2,l3)*Ibar_1(l1,l2,l3)) \
) + \
\
2.*trace_Bbarre_Bbarre_Dbarre_Dbarre(l1,l2,l3,l1_point,l2_point,l3_point) * \
( \
 -4.*Wp_2_MAT_hyper_W_GENE(l1,l2,l3) \
) \
)
#----------------------------------------------------
