Actually, the animation was for 108 simulations, not 180...easy to transpose
the 8 and 0. But Graham is right. It is tedious and took me a week. But putting this capability into FEMM should not be that hard as it does not involve messing with the core simulation algorithms. It needs an incremental setup routine to increment specified parameters and solve for a specified number of iterations and save to different output file names. Anything should be legal to increment. I can see two ways to approach this. (This assumes we are talking about incremental motion.) 1. Specify a range of motion and number of increments and let the program determine the stepsize of whatever parameters are being incremented. 2. Explicitly state the stepsize and the number of steps for a given parameter. Another way is to specify the increments and have FEMM create
FEMM would have to monitor FKERN to know when it is done
Dave Squires Graham Gunderson wrote: Hi, I've run into the same thing, kind of. Recently, I've been using FEMM to make animations. For each frame (in this example), I have to adjust the angular offset of magnetization to simulate rotating magnets and moving fields. To get a smooth animation, I have to use at least 16 frames; with nonlinear materials the crunch time is about a day, and it must be tended to manually. (16 frames is still pretty chunky; 36 or 72 frames would be awesome but I do not have the time or patience to mess around with it) Isn't it possible to invent a "shell" for FEMM, which will iteratively run fkern, each time after changing some variable(s) in the model? Then, the changing parameters could be selected from a list of all properties (frequency, materials, magnetization direction, point coordinates, you name it) and the progression of values given either by a list (100, 200, 300...) or a parsed formula (i.e., x = x + 100). This is one suggestion out of many ways it can be done. I feel this would save a lot of time, for problems that depend on multiple solutions. A colleague of mine did a moving simulation in FEMM using something like 180 frames - and he did that all by hand. This is a lot of babysitting, when you have to solve each frame individually (or in batches of a few, with a couple windows open, each running FKERN... but this "divided attention" multitasking is SLOWER, overall, and crashes too often.) If I knew C++ I might try making an iterative shell of my own... it seems like it would not be so hard to do. I don't know C, though, and have no spare time to learn it now. (I barely have the spare time to manually iterate the simulations!) Regards,Graham |