Новости:

Новая редакция правил форума: 2.4. Если вопрос или ответ содержится во вложенном файле, все-равно кратко описывайте в сообщении вопрос или суть решения. Это необходимо, чтобы тему можно было найти через поиск.

Главное меню

Solver VBA не решает гиперболическое уравнение, но при этом решает гармоническое

Автор Alexander Kirdyashev, 06.09.2017, 10:43

« назад - далее »

Alexander Kirdyashev

Необходима помощь в одном моменте с Solver в VBA.
Имеется цикл в программе, результатом которого является вызов Solver'а для поиска решений с условиями.
addr_c = opened.Sheets("Decl.coeff").Cells(4, b).Address
        addr_cc = opened.Sheets("Decl.coeff").Cells(3, b).Address
        SolverLoad (Decl.coeff!A10)
        SolverOk SetCell:=addr_c, MaxMinVal:=3, ValueOf:=0, ByChange:=addr_cc
        x1 = "1"
        x2 = "0"
        SolverAdd CellRef:=addr_cc, Relation:=3, FormulaText:=x2
        SolverAdd CellRef:=addr_cc, Relation:=1, FormulaText:=x1
        SolverSolve True
        SolverReset


Программа ищет ответ на уравнение вида: qt=qi/(1+b*t*Di)^(1/b), где Di является изменяемым числом и лежит между 0 и 1.

Проблема заключается в следующем. Программа при b=1 отлично находит Di в заданных пределах, а при b=0.7, к примеру, выдает отрицательно значение Di, т.е. не выполняет условия. Не могу разобраться в чем проблема, потому что, если сделать поиск решения вручную, то решение будет верным.

KennethSaf

Спам