Я пытаюсь разработать визуализатор поверхности уровня, используя этот метод (не знаю, является ли это стандартным методом или есть что-то лучше):
Проблема, с которой я сталкиваюсь, связана с шагом 4. У меня нет возможности заранее узнать, сколько возможных значений y будет удовлетворять этому уравнению (точнее, сколько уникальных и реальных значений y).
Кроме того, я стараюсь сделать программу как можно более общей, поэтому я стараюсь не ограничивать исходную функцию f(x,y,z)=k
любыми ограничениями, такими как гладкость или полином, кроме k, которые должны быть постоянными, как требуется для уровня поверхность.
Существует ли алгоритм (без использования CAS / символьного решения), который может идентифицировать корень (и) функции, даже если она имеет несколько корней? Я знаю, что методам деления пополам трудно из-за возможности изменения знака в регионе, но как поживает метод секущих / ньютонов? На каком наборе функций может использоваться метод секущих / ньютонов, и может ли он обнаруживать и находить все уникальные реальные корни в двух заданных границах? Или есть лучший метод для создания / визуализации поверхностей уровня?