Hi Dave and all,
Since I "discovered" FEMM, I've recommendedit to
hundreds of people on email lists, who are interested in working with magnetics.
I've received about a dozen "thank yous" in my personal inbox - many people
needed this software badly and just weren't aware it exists.
None of them are programmers, or Mathematica
users... much less junkies :) They approach from a curious, rather than
technical, angle. (In my opinion - from the perspective of an "inventor" - I
think that these different approaches are equally valid when discovering or
creating something new.)
Anyhow, for at least my own sake, I don't think a
batch scheme that required knowledge outside the FEMM learning curve would
be widely useful - just as you (Dave M.) said.
Personally, I'd rather see a restricted setof
batch run options that is too simple, instead of something wildly flexible
that is too complex. People with good ideas don't always know math or
programming languages. Sometimes you will find yourself a brilliant bumpkin, and
I think he (she, whoever - as a creative, but unschooled John Doe) should have
access to this stuff.
When using the FEMM editor, I can press buttons
that invoke fkern and femmview, from *within* femme. Femme acts much like a
shell that calls the fkern number cruncher and femmview display programs - it
appears to simply launch them and point to the data to
process.
I have assumed that batch processing can be
implemented with similar ease, by writing another application that calls femme,
much like femme calls fkern, for instance. It is just a shift in hierarchy,
where femme (representing a single model under analysis) is no longer the
trunk of the analytical "tree" but one of any number of its branches.
It may require a minor restructuring of femme, so
it can run as an engine as well as a GUI.
In all, it seems that if I had the skills to write
a program like FEMM from scratch, that this kind of functionality could be
included from the outset, without necessitating any breakthroughs. If batch
processing is difficult to implement now, after the software has been
refined, perhaps it is worthwhile to explore modularization of the code - or
something else that makes the engine you have already built still work in
discrete pieces that can be rearranged, and called as routines from a batch
processor. The batch GUI could be much like femme, but in
frames.
I certainly don't expect anyone to take on this
chore... but through beginner's eyes, I can't see much inherently in the
way of implementing the batch processing with a simple,
intuitive approach.
Since this is not an inherent limitation, there is
a solution. It can be done in a straightforward manner, I think, all we are
lacking is a method of approach.
Graham
|