Budget: 999 UAH Deadline: 128 days
Комментарий
oбязательное поле
Есть входная величина N, она обозначает уровень жидкости.
Которая может быть в диапазоне 0…Nmax, где Nmax известное нам число.
Допустим, 4000.
Есть выходная величина V, обозначающая объем жидкости.
Она может быть в диапазоне 0…. Vmax (объем емкости).
Объем емкости нам известен, допустим 400 литров.
Ввиду геометрически неправильной формы емкости зависимость V=f(N) не является линейной.
Требуется описать функцию (можно в виде набора отрезков) при условии что
Известен набор чисел – приращений dN и соответствующих им приращений dV.
При этом абсолютные значения V неизвестны. Известны только N, dN, dV и Vmax.
на одном и том же интервале N1....N2....N3....N4 могут быть несколько приращений Vmax, пересекающих рассматриваемые границы, например приращение V1 получено на приращении N1->N3, а V2- на приращении N2->N4.
Возможен и вариант что приращение V1 получено на приращении N2->N3, а V2- на приращении N1->N4.
придется искать компромиссные варианты аппроксимации.
Вычисляются f(Ni) по известным приращениям V и N. Значения V вычисляются по
любой квадратурной формуле прямоугольников, трапеций и т.п. Vk=интеграл от 0 до Nk, значения подинтегральной функции f(N) в узлах уже известны.
могут быть "неудачные" пары V-N, их придется игнорировать либо корректировать. Чистой математикой, наверное, не обойтись.
Известные пары : N=1, V=0 ; N=1018, V=370
И данные по приращениям:
N1 N2 dV 158 546 131 154 732 191 310 787 147 140 728 196 98 660 192
где N1, N2 - абсолютные значения (известные) - приращение уровня жидкости
а dV - изменение объема. Начальный и конечный объем неизвестен.
Если я правильно понимаю Вашу таблицу, то:
а) в свободный столбец занесите среднегеометрические значения N1 и N2 это
0,5*sqrt(N1*N2)
б) постройте график dV от среднегеометрического
в) получите линию тренда (линейную)
г) у меня получилось dV=-0,0001*ср.геом.+0,3698
д) Вам это нужно?
во-первых мне надо иметь функцию (либо табличную зависимость) V =F (N)
а не dV.
во вторых если считать по исходным данным, то как видите интервалы N..N2 перекрываются и для одного значения N будет существовать сразу несколько вариантов тренда. Надо выбирать подходящий.
Сделал с помощью Excel поиск решения. Целевая функция = минимизация квадратного отклонения разности объёмов
таких точек перелома как на графике быть не должно.
Вот реальный график зависимости V=F(N)
Исходные данные будут вводиться в веб-форму на сайте, а рассчитанная таблица ( в виде пар (N;V) будет отправляться на указанный в форме емейл. это и есть задача проекта.
Вероятно, я дал слишком мало точек для того, чтобы получить такой график как на рисунке выше. График получится хуже.
Простите за опечатку, аппроксимация должна выглядеть так
dV/dN=-0,0001*ср.геом.+0,3701
Ждите.
как уточняющие варианты - может подойти. Когда мы подбираем из нескольких сплайнов нужный - знание цилиндрическая емкость либо прямоугольная - может пригодиться и принять участие в алгоритме. Но это частный случай. А главное, что реальные емкости имеют несовершенную форму, которую невозможно описать формулой, именно для этого мне и требуется данная программа.
Так, це окремий випадок! І ці самі окремі випадки (моделі) допоможуть вирішити задачу. Тобто другим кроком буде побудова функціїї на одному наборі данних. Третім - уточнення функціїї у випадку надходження наступного набору данних і порівняння з моделлю. В ідеалі, коли кількість наборів збільшується - отримуємо краще наближення до моделі. Ну і останній крок - перевірка алгоритму на інших моделях
Можно описать так. есть готовый набор моделей емкостей и их характеристик. описанных таблично (N-V). По каждой из них выбираем случайным образом 8 точек N и для каждой случайное приращение dN ( но N+dN < Nmax). Интерполяцией определяем получаемое dV (использовать в расчетах V нельзя, мы его якобы не знаем). Потом пробуем решить обратную задачу - на основе dV и точек N воссоздать исходную таблицу. После этого попробуем поставить задачу так: Ордината каждой из точек полученной кривой в диапазоне 0..N должна отличаться от исходной кривой не более чем на 3%.
V N
370 1018
333 902,0488518 0,000407554
296 788,1518026 0,000426014
259 676,2037169 0,000234411
222 566,10891 -4,43614E-05
185 457,7811202 -5,16695E-05
148 351,1404824 -0,000404797
111 246,1173973 -0,000810097
74 142,6616896 8,24519E-07
37 40,78829566 4,4642E-07
В данном случае выбрано dV=37
Расчет V=f(N) ведется сверху вниз. Предыдущее значение N1 и V1
известны, N2 (902,04..) подбирается из условия
37-(-0,0001*0,5*sqrt(N1*N2)+0,3701)*(N1-N2)=0
Итого: V=0,3408*N+26,6
не понял, у вас вышла линейная характетистика? Это неправильно. Т.е. в частном случае она может быть линейной, но как правило нелинейна. Я бы понял, если бы в результате получился набор линейных функций для разных интервалов.
А что тут понимать? Проводите прямую линию, которую я указал, на вашем реальном графике (который, кстати, "почти" линейный). Если есть совпадение, хорошо.
Если нет, то необходимо иметь приличный набор данных.
ну на приведенном примере ваша методика сработает, правда с приличной ошибкой. а вот на тех емкостях что я привел выше - прямой быть не может, мне надо общее решение а не частное. Искать решение в виде прямой не годится.
Hello. I am looking for a mentor in Linux. I have experience as a strong junior DevOps specialist, but Linux and Kubernetes are my weak points. While I have some project experience with Kubernetes, my interaction with Linux is very superficial. Creating something, adding, renaming, opening, etc. is clearly not enough. I need a mentor who can help me improve in this area. The main task is to ensure that the knowledge sticks in my head, possibly through some pet project, tasks, or something along those lines, rather than just "repeat after me." I have taken courses on my own, but they don't particularly "stick" in my head. Here is a rough list of what I think I need: - Linux/Unix systems — in-depth administration of operating systems, file systems, user and access rights management, processes and services (systemd), Bash scripting, logging, monitoring, security configuration, automation of administrative tasks; - Networking technologies — OSI model and TCP/IP stack, DNS, HTTP/HTTPS, SSL/TLS, SSH, VPN, load balancing, proxy servers, NAT, routing, network utilities (ping, traceroute, netstat, ss, tcpdump, curl), diagnosing and troubleshooting network issues; If Kubernetes can be added to this list, that would be great. Perhaps you can suggest something from your side. The format of the sessions, as I see it, is twice a week, meetings, discussions, consultations. More details can be your ideas and suggestions. Regarding the cost per hour or per month - please propose.
Development of a Power App, support for me as a beginner. Canvas App, assistance in developing the Screen Help in developing the data structure for the App Programming functions Assistance in creating Date-verse Tables