Resolva a desigualdade com o parâmetro

Sep 08 2020

Eu quero resolver a desigualdade

$m<700000log((m-1)a)+3 $

Onde $a$ é um número inteiro positivo, eu conheço o comando quando não há parâmetro na inequação, mas não sei para o caso do parâmetro. (a é o parâmetro)

Eu quero o comando para a desigualdade acima.

Respostas

1 BobHanlon Sep 08 2020 at 19:29
Reduce[{m < 700000 Log[(m - 1) a] + 3, Element[a, PositiveIntegers]}, m]

(* Reduce::nsmet: This system cannot be solved with the methods available to Reduce.

Reduce[{m < 3 + 700000 Log[a (-1 + m)], a ∈ Integers && a > 0}, m] *)

Para encontrar uma solução aproximada

data = Table[{a, 
   m /. FindRoot[700000 Log[(m - 1) a] + 3 - m == 0, {m, 1 + 1/a}]}, {a, 20}]

(* {{1, 2.}, {2, 1.5}, {3, 1.33333}, {4, 1.25}, {5, 1.2}, {6, 1.16667}, {7, 
  1.14286}, {8, 1.125}, {9, 1.11111}, {10, 1.1}, {11, 1.09091}, {12, 
  1.08333}, {13, 1.07692}, {14, 1.07143}, {15, 1.06667}, {16, 1.0625}, {17, 
  1.05882}, {18, 1.05556}, {19, 1.05263}, {20, 1.05}} *)

(nlm = NonlinearModelFit[data, 1 + 1/a + ϵ, {ϵ}, a]) // Normal

(* 1. + 1/a *)

nlm["BestFitParameters"]

(* {ϵ -> -3.99951*10^-7} *)

A solução aproximada é m > 1 + 1/a

Plot[Evaluate@
  Table[700000 Log[(m - 1) a] + 3 - m, {a, 5, 1, -1}],
 {m, 1, 5}, PlotLegends -> Range[5, 1, -1]]

1 CarlWoll Sep 08 2020 at 20:04

Usando uma variação da substituição de @BobHanlon, podemos encontrar um resultado analítico para o intervalo. Os limites do intervalo são calculados a partir da seguinte equação:

eq = m == 700000Log[(m-1)a] + 3

m == 3 + 700000 Log [a (-1 + m)]

Substituindo:

eq2 = eq /. m -> 1 + x/a

1 + x / a == 3 + 700000 Log [x]

Acontece que Solvepode lidar com esta equação:

xsol = x /. First @ Solve[eq2, x, InverseFunctions->True]

-700000 a ProductLog [- (1 / (700000 a E ^ (1/350000)))]

e assim mé dado por:

msol = 1 + xsol/a

1 - 700000 ProductLog [- (1 / (700000 a E ^ (1/350000)))]

Agora, ProductLogé multivalorado e os diferentes ramos são determinados usando a versão de dois argumentos. Portanto, as soluções reais são:

min = msol /. ProductLog[z_] -> ProductLog[0, z];
max = msol /. ProductLog[z_] -> ProductLog[-1, z];

e então a desigualdade é:

ineq = min < m < max

1 - 700000 ProductLog [- (1 / (700000 a E ^ (1/350000)))] <m <1 - 700000 ProductLog [-1, - (1 / (700000 a E ^ (1/350000)))]

Vamos verificar a=10.:

Block[{a = 10.}, ineq]

1,1 <m <1,30826 * 10 ^ 7

Vamos comparar com a solução da desigualdade original com a=10.:

Block[{a = 10.},
    Reduce[m < 3 + 700000 Log[(m-1)a] + 3, m, Reals]
]

Reduce :: ratnz: Reduce não conseguiu resolver o sistema com coeficientes inexatos. A resposta foi obtida resolvendo um sistema exato correspondente e numerando o resultado.

1,1 <m <1,30826 * 10 ^ 7