to remove the horizontal conditions you can change EnthalpyAnalysis::CreateKMatrixVolume
:
/*Conduction: */
factor = D_scalar*kappa/rho_ice;
for(int i=0;i<numnodes;i++){
for(int j=0;j<numnodes;j++){
Ke->values[i*numnodes+j] += factor*(
dbasis[0*numnodes+j]*dbasis[0*numnodes+i] + dbasis[1*numnodes+j]*dbasis[1*numnodes+i] + dbasis[2*numnodes+j]*dbasis[2*numnodes+i]);
}
}
change to
/*Conduction: */
factor = D_scalar*kappa/rho_ice;
for(int i=0;i<numnodes;i++){
for(int j=0;j<numnodes;j++){
Ke->values[i*numnodes+j] += factor*(
dbasis[2*numnodes+j]*dbasis[2*numnodes+i]);
}
}
Note that some papers only make this approximation for convenience (to speed up the calculation, but we use a different approach so it would not change anything in the case of ISSM in terms of computing time), I personally don't think it makes sense.
and yes, you can set phi
to 0 to remove strain heating.
Cheers
Mathieu