Žodžiu lygtis: [math]2ln(x)-sin(x)+1=0[/math] ir reikia man ja ispresti paprastuju iteraciju metodu. pirmiausia reikia iš tos lygties išsireikšti x ir sioje vietoje aš pakibau :) Gal galite mane kasnors bent jau ant kelio užvesti?
pakeista prieš 13 m
zzzoak +107
Gal taip tiks [math]lnx=(sinx-1)/2([/math] [math]x=exp((sinx-1)/2)[/math]
AncientMariner +411
Garantuoju, kad šitos lygties analitiškai neišspręsi. Galima rasti tik apytikslį atsakymą, tą (spėju) ir reikia padaryti.
Nesu girdėjęs sąvokos "paprastosios iteracijos", bet iš skambesio spėčiau, jog tai galėtų reikšti tokį procesą:
0) pasikoreguoji lygtį į 2 ln x - sin x + 1 + x = x; 1) pasirenki kokį nors x_0, geriausia arčiau tiesos (pvz., x_0 = 1); 2) įstatai x_0 į 2 ln x - sin x + 1 + x. Gauni x_1 = 2 ln x_0 - sin x_0 + 1 + x_0; 3) įstatai x_1: gauni x_2 = 2 ln x_1 - sin x_1 + 1 + x_1; 4) įstatai daug kartų: gauni x_(n+1) = 2 ln x_n - sin x_n + 1 + x_n su daug n reikšmių; 5) x_n turėtų artėti į lygties sprendinį, kai n didėja.
Už rezultatus neatsakau: turėk omenyje, kad tai tik mano spėjimas.
AncientMariner +411
zzzoak pasiūlymas turėtų būti geresnis.
Rodos, reikia išsireikšti x = f(x) taip, kad aplink sprendinį turėtume |f'(x)| kuo mažesnį (būtinai mažesnį nei 1). zzzoak siūlo f(x) = exp( (sin x - 1) / 2 ), taigi f'(x) = 1/2 * cos x * exp( (sin x - 1) / 2 ). Sprendinys yra ≈ 1 ir turime f'(x) ≈ 1/2 * cos 1, kai x ≈ 1, kas yra gerai.
Mano siūlymas bene turi f'(x) > 1, kai x ≈ 1, kas yra blogai.