The following input to makeheader.sh is used to generate header and wrapper-program files for this example. Observe the following:
>>What are dimension 1, 2, 3 called? x y z >>How many data grids are there? 1 >>For each data grid: >> What is its name? dg1 >> What are its dimensions? 4 4 1 >>End of 'for each data grid' >>How many processes are there? 2 >>How many different distributions are there? 2 >>For each distribution: >> What is its name? col >> What are the dimensions of the process grid? 1 2 1 >> For each of the 3 dimensions, what is the width of the ghost boundary? 0 0 0 >> For each of the 3 dimensions, does it wrap? (y/n) n n n >> Do you need to include corners in boundary exchanges? (y/n) n >> What is its name? row >> What are the dimensions of the process grid? 2 1 1 >> For each of the 3 dimensions, what is the width of the ghost boundary? 0 0 0 >> For each of the 3 dimensions, does it wrap? (y/n) n n n >> Do you need to include corners in boundary exchanges? (y/n) n >>End of 'for each distribution' >>Do you want parameters for dimension bounds for local sections? (y/n) >>(These are only useful when process grid dimensions divide >> data grid dimensions evenly.) n >>What is the name of the header file to be created? fft_header.h >>Enter additional lines for the header file; '.' to stop: . >>What is the name of the subroutine file to make? fft_wrap.h