Расчет коэффициентов - страница 2

 

Тут самый прикол, что неизвестно кто и как эти уравнения составлял, так что решения могут не сходится и решений может быть несколько с  разной степенью точности.

Решать методом перебора

For K1=0; To 1; С шагом неизвестной точности.

For K2=0; To 1; С шагом неизвестной точности.

 

А то что, коэффициенты еще и отрицательные, вообще, абсдец.

Решения могут плавать.

А если и Сами коэффициенты А1, В1, С1 - расчетные и округленные, и на каждом тике разные, решений может быть несколько.

 

Если вкратце задача решается методом Ньютона или чем-то близким.

Делим коэфициент к1 на 10 (цифра условная) интервалов (точек) от -1 до 1, аналогично с К2.

Считаем результат уравнения, сравниваем его с колонкой I.

Считаем отклонения  от фактических.

Находим набор с минимальным в + и минус.

Делим интервал на 2 - ищем результат, сравниваем.

и так по кругу.

 
forexman77:

Нужно погонать коэффициенты к 1-7 следующим образом:

A*k1+B1*k2=I1

A2*k1+B2*k2=I2

...

А что такое A в первом уравнении?

Опечатка, это значение ячейки A1; или что?

 
Vladimir:

А что такое A в первом уравнении?

Опечатка, это значение ячейки A1; или что?

Опечатка. Поправил.

 
forexman77:

Опечатка. Поправил.

Тогда решение такое.

A1*k1+B1*k2 = I1                      (1)
A2*k1+B2*k2 = I2                       (2)
A3*k1+B3*k2+C3*k3 = I3             (3)
A4*k1+B4*k2+C4*k3+D4*k4 = I4   (4)
и так далее....
   Начиная с уравнения (2), обозначим сумму всех слагаемых в левой части, кроме последнего, S(i):
S(2) = A2*k1
S(3) = A3*k1+B3*k2
S(4) = A4*k1+B4*k2+C4*k3
и так далее...

   Теперь подсчитаем B1*(2) - B2*(1).
Левые части:  B1*(A2*k1+B2*k2) - B2*(A1*k1+B1*k2) = B1*A2*k1 - B2*A1*k1 = (B1*A2 - B2*A1)*k1.
Правые части:  B1*I2 - B2*I1
Итого B1*(2) - B2*(1) выглядит так:  (B1*A2 - B2*A1)*k1 = B1*I2 - B2*I1, откуда

                          k1 = (B1*I2 - B2*I1) / (B1*A2 - B2*A1).  (*1)

Должно быть B1*A2 - B2*A1 <> 0, думаю, это требование естественным образом выполняется в Вашем случае.
   Дальше одинаково по возрастанию номеров для k2 k3 и так далее:
При известном k1 прямым подсчетом определяется S(2);
при известных k1 k2 прямым подсчетом определяется S(3);
при известных k1 k2 k3 прямым подсчетом определяется S(4);
и так далее..., а сами уравнения (2) и дальше с учетом обозначений S(i) становятся такими:
                           S(i) + Буква[i]i*ki = Ii, i=2,3,4...
где Буква[i] означает нумерацию столбцов таблицы (см. уравнения (2)-(4)).
   Отсюда

     ki = (Ii - S(i)) / (Значение в ячейке Буква[i]i),   (*i)

и при ненулевом знаменателе в правой части ki прямо вычисляется.

Все искомые k вычисляются по формулам (*1) и (*i).

 
Vladimir:
Denis Vasyutin:

Спасибо!

 
forexman77:

Спасибо!

А где спасибо от правительства США за наших людей? 

 
Алексей Тарабанов:

А где спасибо от правительства США за наших людей? 

Очень сложно Вас понять..... 

И желания понять совершенно нет. 

Мне иногда кажется, что целенаправленно занимаетесь троллингом.

Выгоду, что-ли получаете какую с этого.

 
Maxim Kuznetsov:

ну так и считайте через Excel - кто запрещает ?

кинуть данные туда и забрать результат, не шибко сложная задача..