xref: /phasta/phSolver/common/getIntPnts.c (revision 7acde132a6def0fe2daaec0d1a712dff0e5c6636)
159599516SKenneth E. Jansen /**********************************************************************/
259599516SKenneth E. Jansen /* Interpolation points for a tet based on the Chen - Babuska paper.  */
359599516SKenneth E. Jansen /**********************************************************************/
459599516SKenneth E. Jansen #include <stdio.h>
5*f34e7d5cSCameron Smith #include <stdlib.h>
659599516SKenneth E. Jansen 
759599516SKenneth E. Jansen #include <FCMangle.h>
859599516SKenneth E. Jansen 
959599516SKenneth E. Jansen typedef double DARR4[4];
1059599516SKenneth E. Jansen 
1159599516SKenneth E. Jansen /* 4-point (p = 1) */
1259599516SKenneth E. Jansen static double pts4[][4] =
1359599516SKenneth E. Jansen {
1459599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
1559599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
1659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
1759599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000}
1859599516SKenneth E. Jansen };
1959599516SKenneth E. Jansen 
2059599516SKenneth E. Jansen /* 10-point (p = 2) */
2159599516SKenneth E. Jansen static double pts10[][4] =
2259599516SKenneth E. Jansen {
2359599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
2459599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
2559599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
2659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000},
2759599516SKenneth E. Jansen   {0.5000000000, 0.5000000000, 0.0000000000, 0.0000000000},
2859599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.5000000000, 0.0000000000},
2959599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.5000000000, 0.0000000000},
3059599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.0000000000, 0.5000000000},
3159599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.0000000000, 0.5000000000},
3259599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.5000000000, 0.5000000000}
3359599516SKenneth E. Jansen };
3459599516SKenneth E. Jansen 
3559599516SKenneth E. Jansen /* 20-point (p = 3) */
3659599516SKenneth E. Jansen static double pts20[][4] =
3759599516SKenneth E. Jansen {
3859599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
3959599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
4059599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
4159599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000},
4259599516SKenneth E. Jansen   {0.7236067977, 0.2763932023, 0.0000000000, 0.0000000000},
4359599516SKenneth E. Jansen   {0.2763932023, 0.7236067977, 0.0000000000, 0.0000000000},
4459599516SKenneth E. Jansen   {0.0000000000, 0.7236067977, 0.2763932023, 0.0000000000},
4559599516SKenneth E. Jansen   {0.0000000000, 0.2763932023, 0.7236067977, 0.0000000000},
4659599516SKenneth E. Jansen   {0.7236067977, 0.0000000000, 0.2763932023, 0.0000000000},
4759599516SKenneth E. Jansen   {0.2763932023, 0.0000000000, 0.7236067977, 0.0000000000},
4859599516SKenneth E. Jansen   {0.7236067977, 0.0000000000, 0.0000000000, 0.2763932023},
4959599516SKenneth E. Jansen   {0.2763932023, 0.0000000000, 0.0000000000, 0.7236067977},
5059599516SKenneth E. Jansen   {0.0000000000, 0.7236067977, 0.0000000000, 0.2763932023},
5159599516SKenneth E. Jansen   {0.0000000000, 0.2763932023, 0.0000000000, 0.7236067977},
5259599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.7236067977, 0.2763932023},
5359599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.2763932023, 0.7236067977},
5459599516SKenneth E. Jansen   {0.3333333333, 0.3333333333, 0.3333333333, 0.0000000000},
5559599516SKenneth E. Jansen   {0.3333333333, 0.3333333333, 0.0000000000, 0.3333333333},
5659599516SKenneth E. Jansen   {0.3333333333, 0.0000000000, 0.3333333333, 0.3333333333},
5759599516SKenneth E. Jansen   {0.0000000000, 0.3333333333, 0.3333333333, 0.3333333333}
5859599516SKenneth E. Jansen };
5959599516SKenneth E. Jansen 
6059599516SKenneth E. Jansen /* 35-point (p = 4) */
6159599516SKenneth E. Jansen static double pts35[][4] =
6259599516SKenneth E. Jansen {
6359599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
6459599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
6559599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
6659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000},
6759599516SKenneth E. Jansen   {0.8273268354, 0.1726731646, 0.0000000000, 0.0000000000},
6859599516SKenneth E. Jansen   {0.5000000000, 0.5000000000, 0.0000000000, 0.0000000000},
6959599516SKenneth E. Jansen   {0.1726731646, 0.8273268354, 0.0000000000, 0.0000000000},
7059599516SKenneth E. Jansen   {0.0000000000, 0.8273268354, 0.1726731646, 0.0000000000},
7159599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.5000000000, 0.0000000000},
7259599516SKenneth E. Jansen   {0.0000000000, 0.1726731646, 0.8273268354, 0.0000000000},
7359599516SKenneth E. Jansen   {0.8273268354, 0.0000000000, 0.1726731646, 0.0000000000},
7459599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.5000000000, 0.0000000000},
7559599516SKenneth E. Jansen   {0.1726731646, 0.0000000000, 0.8273268354, 0.0000000000},
7659599516SKenneth E. Jansen   {0.8273268354, 0.0000000000, 0.0000000000, 0.1726731646},
7759599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.0000000000, 0.5000000000},
7859599516SKenneth E. Jansen   {0.1726731646, 0.0000000000, 0.0000000000, 0.8273268354},
7959599516SKenneth E. Jansen   {0.0000000000, 0.8273268354, 0.0000000000, 0.1726731646},
8059599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.0000000000, 0.5000000000},
8159599516SKenneth E. Jansen   {0.0000000000, 0.1726731646, 0.0000000000, 0.8273268354},
8259599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.8273268354, 0.1726731646},
8359599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.5000000000, 0.5000000000},
8459599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.1726731646, 0.8273268354},
8559599516SKenneth E. Jansen   {0.2165423725, 0.2165423725, 0.5669152550, 0.0000000000},
8659599516SKenneth E. Jansen   {0.2165423725, 0.5669152550, 0.2165423725, 0.0000000000},
8759599516SKenneth E. Jansen   {0.5669152550, 0.2165423725, 0.2165423725, 0.0000000000},
8859599516SKenneth E. Jansen   {0.2165423725, 0.5669152550, 0.0000000000, 0.2165423725},
8959599516SKenneth E. Jansen   {0.5669152550, 0.2165423725, 0.0000000000, 0.2165423725},
9059599516SKenneth E. Jansen   {0.2165423725, 0.2165423725, 0.0000000000, 0.5669152550},
9159599516SKenneth E. Jansen   {0.5669152550, 0.0000000000, 0.2165423725, 0.2165423725},
9259599516SKenneth E. Jansen   {0.2165423725, 0.0000000000, 0.2165423725, 0.5669152550},
9359599516SKenneth E. Jansen   {0.2165423725, 0.0000000000, 0.5669152550, 0.2165423725},
9459599516SKenneth E. Jansen   {0.0000000000, 0.2165423725, 0.2165423725, 0.5669152550},
9559599516SKenneth E. Jansen   {0.0000000000, 0.2165423725, 0.5669152550, 0.2165423725},
9659599516SKenneth E. Jansen   {0.0000000000, 0.5669152550, 0.2165423725, 0.2165423725},
9759599516SKenneth E. Jansen   {0.2500000000, 0.2500000000, 0.2500000000, 0.2500000000}
9859599516SKenneth E. Jansen };
9959599516SKenneth E. Jansen 
10059599516SKenneth E. Jansen /* 56-point (p = 5) */
10159599516SKenneth E. Jansen static double pts56[][4] =
10259599516SKenneth E. Jansen {
10359599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
10459599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
10559599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
10659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000},
10759599516SKenneth E. Jansen   {0.8825276620, 0.1174723380, 0.0000000000, 0.0000000000},
10859599516SKenneth E. Jansen   {0.6426157582, 0.3573842418, 0.0000000000, 0.0000000000},
10959599516SKenneth E. Jansen   {0.3573842418, 0.6426157582, 0.0000000000, 0.0000000000},
11059599516SKenneth E. Jansen   {0.1174723380, 0.8825276620, 0.0000000000, 0.0000000000},
11159599516SKenneth E. Jansen   {0.0000000000, 0.8825276620, 0.1174723380, 0.0000000000},
11259599516SKenneth E. Jansen   {0.0000000000, 0.6426157582, 0.3573842418, 0.0000000000},
11359599516SKenneth E. Jansen   {0.0000000000, 0.3573842418, 0.6426157582, 0.0000000000},
11459599516SKenneth E. Jansen   {0.0000000000, 0.1174723380, 0.8825276620, 0.0000000000},
11559599516SKenneth E. Jansen   {0.8825276620, 0.0000000000, 0.1174723380, 0.0000000000},
11659599516SKenneth E. Jansen   {0.6426157582, 0.0000000000, 0.3573842418, 0.0000000000},
11759599516SKenneth E. Jansen   {0.3573842418, 0.0000000000, 0.6426157582, 0.0000000000},
11859599516SKenneth E. Jansen   {0.1174723380, 0.0000000000, 0.8825276620, 0.0000000000},
11959599516SKenneth E. Jansen   {0.8825276620, 0.0000000000, 0.0000000000, 0.1174723380},
12059599516SKenneth E. Jansen   {0.6426157582, 0.0000000000, 0.0000000000, 0.3573842418},
12159599516SKenneth E. Jansen   {0.3573842418, 0.0000000000, 0.0000000000, 0.6426157582},
12259599516SKenneth E. Jansen   {0.1174723380, 0.0000000000, 0.0000000000, 0.8825276620},
12359599516SKenneth E. Jansen   {0.0000000000, 0.8825276620, 0.0000000000, 0.1174723380},
12459599516SKenneth E. Jansen   {0.0000000000, 0.6426157582, 0.0000000000, 0.3573842418},
12559599516SKenneth E. Jansen   {0.0000000000, 0.3573842418, 0.0000000000, 0.6426157582},
12659599516SKenneth E. Jansen   {0.0000000000, 0.1174723380, 0.0000000000, 0.8825276620},
12759599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.8825276620, 0.1174723380},
12859599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.6426157582, 0.3573842418},
12959599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.3573842418, 0.6426157582},
13059599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.1174723380, 0.8825276620},
13159599516SKenneth E. Jansen   {0.1480194978, 0.1480194978, 0.7039610043, 0.0000000000},
13259599516SKenneth E. Jansen   {0.1480194978, 0.7039610043, 0.1480194978, 0.0000000000},
13359599516SKenneth E. Jansen   {0.7039610043, 0.1480194978, 0.1480194978, 0.0000000000},
13459599516SKenneth E. Jansen   {0.4208255904, 0.4208255904, 0.1583488191, 0.0000000000},
13559599516SKenneth E. Jansen   {0.4208255904, 0.1583488191, 0.4208255904, 0.0000000000},
13659599516SKenneth E. Jansen   {0.1583488191, 0.4208255904, 0.4208255904, 0.0000000000},
13759599516SKenneth E. Jansen   {0.1480194978, 0.7039610043, 0.0000000000, 0.1480194978},
13859599516SKenneth E. Jansen   {0.7039610043, 0.1480194978, 0.0000000000, 0.1480194978},
13959599516SKenneth E. Jansen   {0.1480194978, 0.1480194978, 0.0000000000, 0.7039610043},
14059599516SKenneth E. Jansen   {0.4208255904, 0.1583488191, 0.0000000000, 0.4208255904},
14159599516SKenneth E. Jansen   {0.1583488191, 0.4208255904, 0.0000000000, 0.4208255904},
14259599516SKenneth E. Jansen   {0.4208255904, 0.4208255904, 0.0000000000, 0.1583488191},
14359599516SKenneth E. Jansen   {0.7039610043, 0.0000000000, 0.1480194978, 0.1480194978},
14459599516SKenneth E. Jansen   {0.1480194978, 0.0000000000, 0.1480194978, 0.7039610043},
14559599516SKenneth E. Jansen   {0.1480194978, 0.0000000000, 0.7039610043, 0.1480194978},
14659599516SKenneth E. Jansen   {0.1583488191, 0.0000000000, 0.4208255904, 0.4208255904},
14759599516SKenneth E. Jansen   {0.4208255904, 0.0000000000, 0.4208255904, 0.1583488191},
14859599516SKenneth E. Jansen   {0.4208255904, 0.0000000000, 0.1583488191, 0.4208255904},
14959599516SKenneth E. Jansen   {0.0000000000, 0.1480194978, 0.1480194978, 0.7039610043},
15059599516SKenneth E. Jansen   {0.0000000000, 0.1480194978, 0.7039610043, 0.1480194978},
15159599516SKenneth E. Jansen   {0.0000000000, 0.7039610043, 0.1480194978, 0.1480194978},
15259599516SKenneth E. Jansen   {0.0000000000, 0.4208255904, 0.4208255904, 0.1583488191},
15359599516SKenneth E. Jansen   {0.0000000000, 0.4208255904, 0.1583488191, 0.4208255904},
15459599516SKenneth E. Jansen   {0.0000000000, 0.1583488191, 0.4208255904, 0.4208255904},
15559599516SKenneth E. Jansen   {0.1779987615, 0.1779987615, 0.1779987615, 0.4660037155},
15659599516SKenneth E. Jansen   {0.1779987615, 0.1779987615, 0.4660037155, 0.1779987615},
15759599516SKenneth E. Jansen   {0.1779987615, 0.4660037155, 0.1779987615, 0.1779987615},
15859599516SKenneth E. Jansen   {0.4660037155, 0.1779987615, 0.1779987615, 0.1779987615}
15959599516SKenneth E. Jansen };
16059599516SKenneth E. Jansen 
16159599516SKenneth E. Jansen /* 84-point (p = 6) */
16259599516SKenneth E. Jansen static double pts84[][4] =
16359599516SKenneth E. Jansen {
16459599516SKenneth E. Jansen   {1.0000000000, 0.0000000000, 0.0000000000, 0.0000000000},
16559599516SKenneth E. Jansen   {0.0000000000, 1.0000000000, 0.0000000000, 0.0000000000},
16659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 1.0000000000, 0.0000000000},
16759599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0000000000, 1.0000000000},
16859599516SKenneth E. Jansen   {0.9151119481, 0.0848880519, 0.0000000000, 0.0000000000},
16959599516SKenneth E. Jansen   {0.7344243967, 0.2655756033, 0.0000000000, 0.0000000000},
17059599516SKenneth E. Jansen   {0.5000000000, 0.5000000000, 0.0000000000, 0.0000000000},
17159599516SKenneth E. Jansen   {0.2655756033, 0.7344243967, 0.0000000000, 0.0000000000},
17259599516SKenneth E. Jansen   {0.0848880519, 0.9151119481, 0.0000000000, 0.0000000000},
17359599516SKenneth E. Jansen   {0.0000000000, 0.9151119481, 0.0848880519, 0.0000000000},
17459599516SKenneth E. Jansen   {0.0000000000, 0.7344243967, 0.2655756033, 0.0000000000},
17559599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.5000000000, 0.0000000000},
17659599516SKenneth E. Jansen   {0.0000000000, 0.2655756033, 0.7344243967, 0.0000000000},
17759599516SKenneth E. Jansen   {0.0000000000, 0.0848880519, 0.9151119481, 0.0000000000},
17859599516SKenneth E. Jansen   {0.9151119481, 0.0000000000, 0.0848880519, 0.0000000000},
17959599516SKenneth E. Jansen   {0.7344243967, 0.0000000000, 0.2655756033, 0.0000000000},
18059599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.5000000000, 0.0000000000},
18159599516SKenneth E. Jansen   {0.2655756033, 0.0000000000, 0.7344243967, 0.0000000000},
18259599516SKenneth E. Jansen   {0.0848880519, 0.0000000000, 0.9151119481, 0.0000000000},
18359599516SKenneth E. Jansen   {0.9151119481, 0.0000000000, 0.0000000000, 0.0848880519},
18459599516SKenneth E. Jansen   {0.7344243967, 0.0000000000, 0.0000000000, 0.2655756033},
18559599516SKenneth E. Jansen   {0.5000000000, 0.0000000000, 0.0000000000, 0.5000000000},
18659599516SKenneth E. Jansen   {0.2655756033, 0.0000000000, 0.0000000000, 0.7344243967},
18759599516SKenneth E. Jansen   {0.0848880519, 0.0000000000, 0.0000000000, 0.9151119481},
18859599516SKenneth E. Jansen   {0.0000000000, 0.9151119481, 0.0000000000, 0.0848880519},
18959599516SKenneth E. Jansen   {0.0000000000, 0.7344243967, 0.0000000000, 0.2655756033},
19059599516SKenneth E. Jansen   {0.0000000000, 0.5000000000, 0.0000000000, 0.5000000000},
19159599516SKenneth E. Jansen   {0.0000000000, 0.2655756033, 0.0000000000, 0.7344243967},
19259599516SKenneth E. Jansen   {0.0000000000, 0.0848880519, 0.0000000000, 0.9151119481},
19359599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.9151119481, 0.0848880519},
19459599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.7344243967, 0.2655756033},
19559599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.5000000000, 0.5000000000},
19659599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.2655756033, 0.7344243967},
19759599516SKenneth E. Jansen   {0.0000000000, 0.0000000000, 0.0848880519, 0.9151119481},
19859599516SKenneth E. Jansen   {0.3162696586, 0.5665493829, 0.1171809585, 0.0000000000},
19959599516SKenneth E. Jansen   {0.5665493829, 0.3162696586, 0.1171809585, 0.0000000000},
20059599516SKenneth E. Jansen   {0.5665493792, 0.1171809548, 0.3162696660, 0.0000000000},
20159599516SKenneth E. Jansen   {0.1171809548, 0.5665493792, 0.3162696660, 0.0000000000},
20259599516SKenneth E. Jansen   {0.1171809641, 0.3162696752, 0.5665493608, 0.0000000000},
20359599516SKenneth E. Jansen   {0.3162696752, 0.1171809641, 0.5665493608, 0.0000000000},
20459599516SKenneth E. Jansen   {0.1063355939, 0.1063355939, 0.7873288122, 0.0000000000},
20559599516SKenneth E. Jansen   {0.1063355939, 0.7873288122, 0.1063355939, 0.0000000000},
20659599516SKenneth E. Jansen   {0.7873288122, 0.1063355939, 0.1063355939, 0.0000000000},
20759599516SKenneth E. Jansen   {0.3333333333, 0.3333333333, 0.3333333333, 0.0000000000},
20859599516SKenneth E. Jansen   {0.5665493829, 0.1171809585, 0.0000000000, 0.3162696586},
20959599516SKenneth E. Jansen   {0.3162696586, 0.1171809585, 0.0000000000, 0.5665493829},
21059599516SKenneth E. Jansen   {0.1171809548, 0.3162696660, 0.0000000000, 0.5665493792},
21159599516SKenneth E. Jansen   {0.5665493792, 0.3162696660, 0.0000000000, 0.1171809548},
21259599516SKenneth E. Jansen   {0.3162696752, 0.5665493608, 0.0000000000, 0.1171809641},
21359599516SKenneth E. Jansen   {0.1171809641, 0.5665493608, 0.0000000000, 0.3162696752},
21459599516SKenneth E. Jansen   {0.1063355939, 0.7873288122, 0.0000000000, 0.1063355939},
21559599516SKenneth E. Jansen   {0.7873288122, 0.1063355939, 0.0000000000, 0.1063355939},
21659599516SKenneth E. Jansen   {0.1063355939, 0.1063355939, 0.0000000000, 0.7873288122},
21759599516SKenneth E. Jansen   {0.3333333333, 0.3333333333, 0.0000000000, 0.3333333333},
21859599516SKenneth E. Jansen   {0.1171809585, 0.0000000000, 0.3162696586, 0.5665493829},
21959599516SKenneth E. Jansen   {0.1171809585, 0.0000000000, 0.5665493829, 0.3162696586},
22059599516SKenneth E. Jansen   {0.3162696660, 0.0000000000, 0.5665493792, 0.1171809548},
22159599516SKenneth E. Jansen   {0.3162696660, 0.0000000000, 0.1171809548, 0.5665493792},
22259599516SKenneth E. Jansen   {0.5665493608, 0.0000000000, 0.1171809641, 0.3162696752},
22359599516SKenneth E. Jansen   {0.5665493608, 0.0000000000, 0.3162696752, 0.1171809641},
22459599516SKenneth E. Jansen   {0.7873288122, 0.0000000000, 0.1063355939, 0.1063355939},
22559599516SKenneth E. Jansen   {0.1063355939, 0.0000000000, 0.1063355939, 0.7873288122},
22659599516SKenneth E. Jansen   {0.1063355939, 0.0000000000, 0.7873288122, 0.1063355939},
22759599516SKenneth E. Jansen   {0.3333333333, 0.0000000000, 0.3333333333, 0.3333333333},
22859599516SKenneth E. Jansen   {0.0000000000, 0.3162696586, 0.5665493829, 0.1171809585},
22959599516SKenneth E. Jansen   {0.0000000000, 0.5665493829, 0.3162696586, 0.1171809585},
23059599516SKenneth E. Jansen   {0.0000000000, 0.5665493792, 0.1171809548, 0.3162696660},
23159599516SKenneth E. Jansen   {0.0000000000, 0.1171809548, 0.5665493792, 0.3162696660},
23259599516SKenneth E. Jansen   {0.0000000000, 0.1171809641, 0.3162696752, 0.5665493608},
23359599516SKenneth E. Jansen   {0.0000000000, 0.3162696752, 0.1171809641, 0.5665493608},
23459599516SKenneth E. Jansen   {0.0000000000, 0.1063355939, 0.1063355939, 0.7873288122},
23559599516SKenneth E. Jansen   {0.0000000000, 0.1063355939, 0.7873288122, 0.1063355939},
23659599516SKenneth E. Jansen   {0.0000000000, 0.7873288122, 0.1063355939, 0.1063355939},
23759599516SKenneth E. Jansen   {0.0000000000, 0.3333333333, 0.3333333333, 0.3333333333},
23859599516SKenneth E. Jansen   {0.3630696293, 0.3630696293, 0.1369303707, 0.1369303707},
23959599516SKenneth E. Jansen   {0.3630696293, 0.1369303707, 0.1369303707, 0.3630696293},
24059599516SKenneth E. Jansen   {0.3630696293, 0.1369303707, 0.3630696293, 0.1369303707},
24159599516SKenneth E. Jansen   {0.1369303707, 0.3630696293, 0.1369303707, 0.3630696293},
24259599516SKenneth E. Jansen   {0.1369303707, 0.1369303707, 0.3630696293, 0.3630696293},
24359599516SKenneth E. Jansen   {0.1369303707, 0.3630696293, 0.3630696293, 0.1369303707},
24459599516SKenneth E. Jansen   {0.1293440398, 0.1293440398, 0.1293440398, 0.6119678806},
24559599516SKenneth E. Jansen   {0.1293440398, 0.1293440398, 0.6119678806, 0.1293440398},
24659599516SKenneth E. Jansen   {0.1293440398, 0.6119678806, 0.1293440398, 0.1293440398},
24759599516SKenneth E. Jansen   {0.6119678806, 0.1293440398, 0.1293440398, 0.1293440398}
24859599516SKenneth E. Jansen };
24959599516SKenneth E. Jansen 
25059599516SKenneth E. Jansen /* return the requested number of interpolation points */
25159599516SKenneth E. Jansen #define getintpnts FortranCInterface_GLOBAL_(getintpnts, GETINTPNTS)
25259599516SKenneth E. Jansen 
getintpnts(double points[][3],int * npts)25359599516SKenneth E. Jansen void getintpnts(double points[][3], int *npts)
25459599516SKenneth E. Jansen {
25559599516SKenneth E. Jansen   int   i, j;
25659599516SKenneth E. Jansen   DARR4 *pnts;
25759599516SKenneth E. Jansen 
25859599516SKenneth E. Jansen   switch (*npts){
25959599516SKenneth E. Jansen   case 4:
26059599516SKenneth E. Jansen     pnts = pts4;
26159599516SKenneth E. Jansen     break;
26259599516SKenneth E. Jansen   case 10:
26359599516SKenneth E. Jansen     pnts = pts10;
26459599516SKenneth E. Jansen     break;
26559599516SKenneth E. Jansen   case 20:
26659599516SKenneth E. Jansen     pnts = pts20;
26759599516SKenneth E. Jansen     break;
26859599516SKenneth E. Jansen   case 35:
26959599516SKenneth E. Jansen     pnts = pts35;
27059599516SKenneth E. Jansen     break;
27159599516SKenneth E. Jansen   case 56:
27259599516SKenneth E. Jansen     pnts = pts56;
27359599516SKenneth E. Jansen     break;
27459599516SKenneth E. Jansen   case 84:
27559599516SKenneth E. Jansen     pnts = pts84;
27659599516SKenneth E. Jansen     break;
27759599516SKenneth E. Jansen   default:
27859599516SKenneth E. Jansen     fprintf(stderr,"\n%d interpolation points not supported...\n",*npts);
27959599516SKenneth E. Jansen     fprintf(stderr,"\ngive {4,10,20,35,56,84}\nexiting...\n");
28059599516SKenneth E. Jansen     exit(-1);
28159599516SKenneth E. Jansen   }
28259599516SKenneth E. Jansen 
28359599516SKenneth E. Jansen   /* copy points to the fortran array */
28459599516SKenneth E. Jansen   for (i=0; i < *npts; i++) {
28559599516SKenneth E. Jansen     for (j=0; j < 3; j++) {
28659599516SKenneth E. Jansen       points[i][j] = pnts[i][j];
28759599516SKenneth E. Jansen     }
28859599516SKenneth E. Jansen   }
28959599516SKenneth E. Jansen 
29059599516SKenneth E. Jansen   return;
29159599516SKenneth E. Jansen }
29259599516SKenneth E. Jansen 
29359599516SKenneth E. Jansen 
29459599516SKenneth E. Jansen 
295