У меня есть некоторые проблемы с поиском хороших начальных условий для подгонки, которая просто не будет себя вести. Так что у меня возникла идея перебить его, вставив его в al oop, который говорит gnuplot продолжать подгонку, пока он не получит относительное отклонение менее 100% при случайном изменении начальных значений при каждом запуске l oop , я написал что-то вроде этого:
while(abs(m_err/m) > 1){
m = rand(0)*0.3
k = rand(0)
x_0 = 15 + rand(0)*10
fit logi(x) 'data.csv' u 1:8 via m,k,x_0
}
я умножаю функцию rand так, чтобы получить значения, близкие к значению, которое, как я ожидаю, будет подходящим для подгонки.
Этот метод, очевидно, приводит к большим приступов, не сходящихся и не останавливающих сценарий в середине l oop. Как я могу сказать gnuplot просто проигнорировать это и просто повторно запустить рандомизацию и подгонку l oop, если подгонка не сходится или она дает особую матрицу?