Skip to content

Instantly share code, notes, and snippets.

Created December 15, 2016 13:31
Show Gist options
  • Save anonymous/3d1b979692d460e73acce7de6405e740 to your computer and use it in GitHub Desktop.
Save anonymous/3d1b979692d460e73acce7de6405e740 to your computer and use it in GitHub Desktop.
static void diag_MK_matrix(FLOAT_XX EM, FLOAT_XX mu, FLOAT_XX ro,
FLOAT_XX a, FLOAT_XX b, FLOAT_XX xx,
FLOAT_XX* poutM, FLOAT_XX* poutK) {
*poutM = 2 * a*b*Pi*ro*xx;
FLOAT_XX matrixK[8][8] = { List(8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) - (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) - (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) + (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) + (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx),
List(8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx),
List(8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) - (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) - (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) + (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) + (-(EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (-(EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx),
List(8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx),
List(8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) - ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) - ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) + ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) + ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx),
List(8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) - (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx),
List(8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) - ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) - ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(-EM / (32.*Power(b, 2)*(1 + mu)) + ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx,
8 * a*b*Pi*(EM / (32.*Power(b, 2)*(1 + mu)) + ((EM*(1 - mu)) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*a) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*(1 - mu)) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*xx))*xx, 8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + ((EM*mu) / (4.*a*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (4.*(1 - 2 * mu)*(1 + mu)*xx)) / (4.*b))*xx),
List(8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) - (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(-EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(-EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) - (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx,
8 * a*b*Pi*(EM / (32.*a*b*(1 + mu)) + (EM*mu) / (16.*a*b*(1 - 2 * mu)*(1 + mu)) + (EM*mu) / (16.*b*(1 - 2 * mu)*(1 + mu)*xx))*xx, 8 * a*b*(EM / (32.*Power(a, 2)*(1 + mu)) + (EM*(1 - mu)) / (16.*Power(b, 2)*(1 - 2 * mu)*(1 + mu)))*Pi*xx)
};
//memcpy(poutM, &(matrixM[0][0]), sizeof(FLOAT_XX) * 8 * 8);
memcpy(poutK, &(matrixK[0][0]), sizeof(FLOAT_XX) * 8 * 8);
}
int main()
{
FLOAT_XX M[8][8],K[8][8],sM;
FLOAT_XX t = Power(1.3333, 0.2);
//MK_matrix(1.1, 2.2, 3.3, 4.4, 5.5, 6.6, &M[0][0], &K[0][0]);
diag_MK_matrix(1.1, 2.2, 3.3, 4.4, 5.5, 6.6, &sM, &K[0][0]);
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment