![](/sites/all/themes/icompany/img/noavatar.png)
делюсь опытом
нужно было определить эмпирические формулы для Saturation-Height Functions при наличии керновых даннных
простой формулой не обойдешься, а эксель известен своим неумением делать любую регрессию, кроме линейной
на просторах инета найдена программа DataFit
делает регрессию для сложных функций, в том числе и произвольно заданных. там сказано, что определяет до 20и параметров
но мы обошлись тремя. методом научного тыка найдена эмперическая формула, дающая хорошую аппроксимацию. во-первых, по форме; во-вторых, удовлетворяет условиям: Sw = 1 @Pc = 0, Sw --> const(Swi) @ Pc --> бесконечность
получилось вот эдак: Sw = ((1-b )/ln(Pc*a+c)+b )/((1-b )/ln( с ) +b ), параметры a, b, c для заданного набора экспериментальных данных с помощью регрессии получаются легко и просто
Я нашел что зависимости J(Sw)=k*(Sw-Swirr)^n+a или J=a+k*Sw^n
работают тоже неплохо, просто последнюю точку Sw=1 надо обнулять.
Для любой регрессии всегда использую просто Excel + Goal seek по параметрам модельного уравнения, минизируешь ошибку между модельными значениями и точками которые хочешь заматчить.
Плюсы:
- outliers легко исключить и, наоборот, если надо, добавить dummy points
- очень часто бывает, особенно для степенных или экспоненциальных графиков что минимум квадратичного или абс отклонения не дают желаемую картинку, поэтому можно выбрать любую другую метрику для ошибки, например логарифм.
а что, STATISTICA уже не в моде?
Да, звиняюсь. Русскоязычная информация тоже есть - в Вики
Собственно,здесь инфа про этот R
Ну в смысле не Goal seek, а Solver который может минимум-максимум искать. У меня проблем не было, надо начальное решение более менее аккуратно задавать чтобы не было расхождений.
только в этом случае проблема выразить обратно Sw(J) (что необходимо для моделирования в петреле).
Большое спасибо. Просто и удобно. С 19 параметрами справилась. Я очень довольна