Design a magnet with a field which is uniform to one part in 1000 over the central region of the volume between the pole pieces.
The magnetic field near highly permeable regions of space can be represented as the gradient of a magnetic potential, with constant-potential boundary conditions on the surfaces. And Laplace's equation can be solved for grubby real-world geometries by the numerical relaxation method.
Your precessor in this job left you with a preliminary version of a program to do this calcuation. It is named ~bland/teach/703/probs/np504/relax1.pro The first thing you do is to copy this program to your directory and rerun it. You see that your predecessor made a few mistakes.
You will notice that the pole pieces appear at V=0 and V=10V with a vaguely uniform field gradient in between. However, the field is weird in the fringing region, and the field non-uniformity is 29 parts per thousand. How can you improve the situation?
First the boundaries have not been treated very intellgently. Better have a try at impoving this situation. Then if this still doesn't make sense, try to get some hints from the boss.
When the boundary conditions are improved, you will need to start shimming the pole pieces to improve the unifromity. Can you guess what to do? You will find that the spatial resolution of this model leaves something to be desired, so you will want to re-write the program using larger arrays. Then you will have to ask the boss for a faster computer.
The program relax1 uses the array itype to specify which points in the potential array are to be varied in the relaxation calculation, and which are ato be kept fixed. The code is: itype = 1, calculate; itype = anything else, don't calculate.