Post Reply 
Public Beta Availiable - Win/Mac/Firmware [UPDATED]
11-12-2017, 06:04 PM (This post was last modified: 11-12-2017 06:07 PM by Anders.)
Post: #101
RE: Public Beta Availiable - Win/Mac/Firmware [UPDATED]
(11-12-2017 04:50 AM)AlexFekken Wrote:  
(11-11-2017 04:33 PM)Anders Wrote:  It also does not matter if you change the Num X Step and NUM Y Step to something smaller say 0.0000001 because that is in the Graph 3D Num Set Up screens.

Like I mentioned in the "How to specify +/- in a function definition." thread where this was first discussed, you can get a better result by increasing the Grid size in the Setup. Unfortunately this is currently limited to 100x100, so at this stage it may be more productive to request an increase in the max grid size, rather than the implementation of what would be an entrirely different algorithm.

Just my 2c.

Thanks for pointing out the grid size. It could work to allow higher numbers than 100x100 but it would also need more CPU time (the reason why I think HP limited to 100 in the first place). If you allowed 1000x1000, I suspect the system would need to evaluate 2 orders of magnitudes approx: 10x10=100 more points (I am guessing how the algorithm work here). Basically, it will take 100x more time to plot the surface...

So, I do think they need to modify the algorithm to handle cases like this, not to bog down the CPU unnecessarily.

I just did a few others cases like this (not hard) that will surely generate a negative number inside a square root here and there on the surface:

for instance try:
FZ3 = √(1-SIN(X)^2-COS(Y)^2) or
FZ4 = 1/√(4-X^2-Y^2)

As you can see, there are holes/anomalies here and there.

So net, net: I think the plot algorithm need to:
- NOT imminently terminate when Z(X+dx,Y+dy) fails to evaluate (like in the case of negative square roots)
- instead: if Z(X,Y) worked but Z(X+dx,Y+dy) failed, use a smaller step size (e.g. try smaller steps: dx=dx/2, dy=dy/2) until Z(X+dx,Y+dy) evaluates withour failure, then plot and repeat stepping with smaller step until there is no visible hole given the screen setting. Basically when Z(X+dx,Y+dy) and Z(X,Y) generats the same pixel or x+dx and x is the same point (in the grid) you are done. You do need to floor dx,dy to not go beyond an absolute minimum step size to guaranteed this corner case loop terminates.
Find all posts by this user
Quote this message in a reply
Post Reply 

Messages In This Thread
RE: Public Beta Availiable - Win/Mac/Firmware [UPDATED] - Anders - 11-12-2017 06:04 PM

User(s) browsing this thread: 1 Guest(s)