Вот очень простой вопрос для парней VBA. Я использую метод Ньютона для некоторых функций, и иногда я нахожу предположение, что я могу только предположить, что функция Exp() переполняется (и останавливает код). Какие у вас есть предложения, ребята, чтобы просто справиться с этим делом? (Может быть, какая-то обработка ошибок?)
Если метод Ньютона потерпит неудачу из-за этого или любого другого вида взрыва, я хотел бы перейти к моему коду деления пополам ниже этой точки.
Кстати, я думал о том, чтобы, возможно, взять журналы, чтобы сделать эту ситуацию менее вероятной, но, честно говоря, я работаю с некоторой математикой, которую я еще не полностью понимаю, и я хотел бы в любом случае обработать случай сбоя метода Ньютона. первый.
Отказ от ответственности: я новичок в VBA, поэтому любые предложения будут прочитаны и оценены. Заранее спасибо.
Изменить: меня попросили опубликовать код. Во-первых, спасибо за чтение. К сожалению, я не могу опубликовать весь код по бизнес-причинам, но я могу дать самые общие наброски. Я создал модуль и функцию. Внутри этой функции у меня есть:
Newtons Method Loop
Bisection Loop
Внутри цикла метода Ньютона я проследил до точки, где у меня есть следующее предположение о чем-то около 28 000 или около того, и я присваиваю переменной h значение Exp(28 000) или круговое движение. В этот момент отладчик прерывается; мой код по существу завершается, и любое значение, которое должна возвращать моя функция, дает #ЗНАЧ! в моей камере.
Я знаю, что информации немного, но я надеюсь (и думаю), что ее должно быть достаточно. Поправьте меня, если я ошибаюсь.
Редактировать 2: если ничего не помогает, я собираюсь явно поймать слишком большие значения, но мне интересно, есть ли более надежное и элегантное решение.