I’ve been experimenting a bit with the GH_Field class for some custom field components, and was having a few headaches simulating the step solvers associated with the Field Line component in Grasshopper. I’m finding that I get very different Field outputs when I use the singular GH_Field.SolveStep method in a for loop, compared to using to GH_Field.SolveSteps method to simulate a field line. Does anyone have any experience using these methods? It seems as though there is something strange/different happening in the SolveSteps method that can’t be exposed or controlled.
SolveSteps has the accuracy parameter that SolveStep does not have. What could be doing this that you are not doing? Well, from the name, it must be controlling the stability/sensitivity/balance/… or something like that of the vector field, for example, controlling the magnitude of its force. On the other hand, SolveStep has the factor parameter that SolveSteps does not have, which could be being modified within SolveSteps to control the magnitude of its forces.
When you integrate a field, you have the dilemma of which scale of magnitude to use, it must be large enough to be optimally computed and small enough to be guided by the nearest gradient. Perhaps those parameters are involved in optimizing this.