Roman Pielaszek - Nanodyfrakcja rentgenowska

Chapter 6 Dodatki

6.1 Wzory do bezpośredniego użycia, kody QR

Im fizyka teoretyczna dalsza akademi a bliższa praktyki, tym więcej realnych parametrów musi uwzględniać. Ta zależność powoduje, że formuły (nawet czysto analityczne) bardzo się wydłużają. Długie wzory można jednak wprowadzić do aplikacji (np. fitujących) albo własnego kodu obliczeniowego szybko i bez ryzyka błedu. W tym celu podajemy wzory przepisane do języka C/C++ i wydrukowane w postaci kodów QR.

Można je zeskanować telefonem komórkowym, który powinien je zinterpretować jako zwykły tekst i zaproponować jakąś metodę udostępnienia (sharing). Wybierając np. opcję e-mail, można wysłać taki wzór samemu sobie i potem łatwo wkleić jako funkcję użytkownika (user defined function) w programie fitującym. Można też wkleić ja bezpośrednio do własnego kodu w C/C++.

W razie potrzeby, można przy pomocy zwykłego edytora zmienić nazwy funkcji (np. z “pow” na “Java.lang.Math.pow”) w całym tekście i tą drogą dokonać konwersji do innego języka (np. z C/C++ do Java).

6.1.1 Profil linii polidyspersyjnej - ziarna kuliste

Na rys. 6.1 i 6.2 podajemy wzór na profil linii dyfrakcyjnej polidyspersyjnych nanoproszków w czterech wersjach:

  1. 1.

    Natężenie: LPGSD(q;R,σ), wzór (3.76), rys. 6.1

  2. 2.

    Pochodna po q: δδqLPGSD(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.1

  3. 3.

    Pochodna po R: δδRLPGSD(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.2

  4. 4.

    Pochodna po σ: δδσLPGSD(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.2

Pochodne cząstkowe pozwalają na dużo efektywniejsze korzystanie z (i projektowanie) programów fitujących i modelujących dyfrakcję. W przypadku korzystania z wzorów należy mieć na uwadze pozorne osobliwości (o czym jest mowa w tekście): wektor rozpraszania q może się pojawić w mianowniku, co nie znaczy, że formuła nie jest określona dla q=0. Dla przypadku q=0 należy podać odpowiednią wartość graniczną, zaś wszędzie indziej - wartość bezpośrednio ze wzoru.

Wzór ( Wzór (
LPGSD(q;R,σ) δδqLPGSD(q;R,σ)
Wzór (3.76) Pochodna wzoru (3.76) po q
(pow(Rsr,3)*(3*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* (2 + (pow(q,2)*(-3 + pow(Rsr,2)/pow(sigma,2))* (-2 + pow(Rsr,2)/pow(sigma,2))*pow(sigma,4))/pow(Rsr,2)\ ) - 6*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2),1.5)* cos((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr)) - (6*q*(-3 + pow(Rsr,2)/pow(sigma,2))*pow(sigma,2)* (1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))* sin((-2 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr)))/Rsr))/ (sqrt(2*M_PI)*pow(q,4)*(-3 + pow(Rsr,2)/pow(sigma,2))* (-2 + pow(Rsr,2)/pow(sigma,2))*(-1 + pow(Rsr,2)/pow(sigma,2))* pow(sigma,6)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))) (3*sqrt(2/M_PI)*(-(Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* (pow(q,2)*pow(Rsr,4) + 6*pow(q,2)*pow(sigma,4) + pow(Rsr,2)*(4 - 5*pow(q,2)*pow(sigma,2)))) - pow(q,2)*Rsr*(pow(Rsr,4) - 5*pow(Rsr,2)*pow(sigma,2) + 6*pow(sigma,4))*cos((-2 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr)) + Rsr*sqrt(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))* ((pow(q,2)*pow(sigma,4) + pow(Rsr,2)*(4 + pow(q,2)*pow(sigma,2)))* cos((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr)) + q*Rsr*(pow(Rsr,2) - 3*pow(sigma,2))* sin((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))) + q*(pow(Rsr,2) - 3*pow(sigma,2))* (pow(q,2)*pow(sigma,4) + pow(Rsr,2)*(3 + pow(q,2)*pow(sigma,2)))* sin((-2 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,5)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* (pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6)))
Wzór (
LPGSDmax(q=0;R)=22πR1+123
Wzór (3.74)
(3*Rsr)/(4.*sqrt(2*M_PI))
Figure 6.1: Wzór (3.76) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach kulistych (po lewej) oraz jego pochodna (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Dla q=0, zamiast wzoru LPGSD(q;R,σ) należy stosować jego wartość graniczną i zarazem maxymalną LPGSDmax, pozbawioną q w mianowniku, którą wydrukowano poniżej. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Pochodna wzoru ( Pochodna wzoru (
δδRLPGSD(q;R,σ) δδσLPGSD(q;R,σ)
Pochodna wzoru (3.76) po R Pochodna wzoru (3.76) po σ
(-3*pow(sigma,2)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* (pow(q,2)*pow(Rsr,10) + 36*pow(q,2)*pow(sigma,10) + pow(Rsr,8)*(6 - 9*pow(q,2)*pow(sigma,2)) - pow(Rsr,4)*pow(sigma,4)*(22 + 23*pow(q,2)*pow(sigma,2)) + 3*pow(Rsr,6)*(-4*pow(sigma,2) + 9*pow(q,2)*pow(sigma,4)) + pow(Rsr,2)*(36*pow(sigma,6) - 24*pow(q,2)*pow(sigma,8))) - 6*q*pow(pow(Rsr,2) - 3*pow(sigma,2),2)* (pow(Rsr,4) - 3*pow(Rsr,2)*pow(sigma,2) + 2*pow(sigma,4))* (q*pow(sigma,2)*(-pow(Rsr,2) + 2*pow(sigma,2)) + 2*(pow(Rsr,3) + pow(q,2)*Rsr*pow(sigma,4))* atan((q*pow(sigma,2))/Rsr))* cos((-2 + pow(Rsr,2)/pow(sigma,2))*atan((q*pow(sigma,2))/Rsr)) \ + 6*Rsr*sqrt(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))* (Rsr*cos((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))* (6*pow(Rsr,4)*pow(sigma,4)* (-1 + 2*pow(q,2)*pow(sigma,2)) + 2*pow(sigma,8)*(9 + 14*pow(q,2)*pow(sigma,2)) - pow(Rsr,2)*pow(sigma,6)* (11 + 35*pow(q,2)*pow(sigma,2)) + pow(Rsr,6)*(3*pow(sigma,2) - pow(q,2)*pow(sigma,4)) + (pow(Rsr,2) + pow(q,2)*pow(sigma,4))* (pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6))* log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6))* (q*pow(sigma,2)*(-pow(Rsr,2) + 3*pow(sigma,2)) + 2*(pow(Rsr,3) + pow(q,2)*Rsr*pow(sigma,4))* atan((q*pow(sigma,2))/Rsr))* sin((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))) + 6*q*Rsr*pow(pow(Rsr,2) - 3*pow(sigma,2),2)* (2*pow(Rsr,4)*pow(sigma,2) - pow(q,2)*pow(Rsr,4)*pow(sigma,4) + (-4 + 7*pow(q,2)*pow(Rsr,2))*pow(sigma,6) - 8*pow(q,2)*pow(sigma,8) + (pow(Rsr,4) - 3*pow(Rsr,2)*pow(sigma,2) + 2*pow(sigma,4))* (pow(Rsr,2) + pow(q,2)*pow(sigma,4))* log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))* sin((-2 + pow(Rsr,2)/pow(sigma,2))*atan((q*pow(sigma,2))/Rsr)))/ (sqrt(2*M_PI)*pow(q,4)*pow(sigma,2)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* pow(pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6),2)) (3*sqrt(2/M_PI)*(Rsr*pow(sigma,4)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* (pow(q,2)*pow(Rsr,8) + 36*pow(q,2)*pow(sigma,8) - 2*pow(Rsr,6)*(-6 + 5*pow(q,2)*pow(sigma,2)) + pow(Rsr,4)*pow(sigma,2)* (-44 + 37*pow(q,2)*pow(sigma,2)) + pow(Rsr,2)*(36*pow(sigma,4) - 60*pow(q,2)*pow(sigma,6))) + 2*q*Rsr*pow(pow(Rsr,2) - 3*pow(sigma,2),2)* (pow(Rsr,4) - 3*pow(Rsr,2)*pow(sigma,2) + 2*pow(sigma,4))* (q*pow(sigma,2)*(-pow(Rsr,2) + 2*pow(sigma,2)) + (pow(Rsr,3) + pow(q,2)*Rsr*pow(sigma,4))* atan((q*pow(sigma,2))/Rsr))* cos((-2 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr)) + pow(Rsr,2)*sqrt(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))* (cos((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))* (2*Rsr*pow(sigma,4)* (pow(q,2)*pow(Rsr,6) - 3*pow(Rsr,4)*(2 + 3*pow(q,2)*pow(sigma,2)) - pow(sigma,4)*(18 + 17*pow(q,2)*pow(sigma,2)) + pow(Rsr,2)*pow(sigma,2)* (22 + 23*pow(q,2)*pow(sigma,2))) - (pow(Rsr,2) + pow(q,2)*pow(sigma,4))* (pow(Rsr,7) - 6*pow(Rsr,5)*pow(sigma,2) + 11*pow(Rsr,3)*pow(sigma,4) - 6*Rsr*pow(sigma,6))* log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - 2*(pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6))* (q*pow(sigma,2)*(-pow(Rsr,2) + 3*pow(sigma,2)) + (pow(Rsr,3) + pow(q,2)*Rsr*pow(sigma,4))* atan((q*pow(sigma,2))/Rsr))* sin((-3 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))) - q*pow(pow(Rsr,3) - 3*Rsr*pow(sigma,2),2)* (-2*pow(sigma,4)*(pow(q,2)*pow(Rsr,4) + 4*pow(sigma,2) + 5*pow(q,2)*pow(sigma,4) - pow(Rsr,2)*(3 + 5*pow(q,2)*pow(sigma,2))) + (pow(Rsr,4) - 3*pow(Rsr,2)*pow(sigma,2) + 2*pow(sigma,4))* (pow(Rsr,2) + pow(q,2)*pow(sigma,4))* log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))* sin((-2 + pow(Rsr,2)/pow(sigma,2))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,4)*pow(sigma,3)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2)))* pow(pow(Rsr,6) - 6*pow(Rsr,4)*pow(sigma,2) + 11*pow(Rsr,2)*pow(sigma,4) - 6*pow(sigma,6),2))
Figure 6.2: Pochodna wzoru (3.76) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach kulistych po średnim rozmiarze ziarna (po lewej) oraz po dyspersji rozmiarów (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.

6.1.2 Profil linii polidyspersyjnej - ziarna wielościenne

6.1.2.1 Kierunek czołowy, D=1

Na rys. 6.3 i 6.4 podajemy wzór na profil linii dyfrakcyjnej polidyspersyjnych nanoproszków w czterech wersjach:

  1. 1.

    Natężenie: LPGSDD=1(q;R,σ), wzór (3.5.3), rys. 6.3

  2. 2.

    Pochodna po q: δδqLPGSDD=1(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.3

  3. 3.

    Pochodna po R: δδRLPGSDD=1(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.4

  4. 4.

    Pochodna po σ: δδσLPGSDD=1(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.4

Pochodne cząstkowe pozwalają na dużo efektywniejsze korzystanie z (i projektowanie) programów fitujących i modelujących dyfrakcję. W przypadku korzystania z wzorów należy mieć na uwadze pozorne osobliwości (o czym jest mowa w tekście): wektor rozpraszania q może się pojawić w mianowniku, co nie znaczy, że formuła nie jest określona dla q=0. Dla przypadku q=0 należy podać odpowiednią wartość graniczną, zaś wszędzie indziej - wartość bezpośrednio ze wzoru.

Wzór ( Wzór (
LPGSDD=1(q;R,σ) δδqLPGSDD=1(q;R,σ)
Wzór (3.5.3) Pochodna wzoru (3.5.3) po q
-((Rsr*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))) (sqrt(2/M_PI)*Rsr*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,3)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)) - (Rsr*((2*q*(0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), -0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr)))/pow(Rsr,2) - (2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), -0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr)))/Rsr))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))
Figure 6.3: Wzór (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych (po lewej) oraz jego pochodna (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Pochodna wzoru ( Pochodna wzoru (
δδRLPGSDD=1(q;R,σ) δδσLPGSDD=1(q;R,σ)
Pochodna wzoru (3.5.3) po R Pochodna wzoru (3.5.3) po σ
(pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (sqrt(2*M_PI)*pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* pow(sigma,4)) - (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr)))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)) - (Rsr*(pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))* ((-2*pow(q,2)*(0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,4))/ (pow(Rsr,3)*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (Rsr*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/ pow(sigma,2)) + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((2*q*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2))/ (pow(Rsr,2)*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (2*Rsr*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2))* sin(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)) -((pow(Rsr,3)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (sqrt(2*M_PI)*pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)), 2)*pow(sigma,5))) + (sqrt(2/M_PI)*Rsr* (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,3)) - (Rsr*(pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))* ((4*pow(q,2)*(0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,3))/ (pow(Rsr,2)*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (pow(Rsr,2)*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/ pow(sigma,3)) + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((-4*q*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*sigma)/ (Rsr*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (2*pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,3))* sin(2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))
Figure 6.4: Pochodna wzoru (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych po średnim rozmiarze ziarna (po lewej) oraz po dyspersji rozmiarów (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.

6.1.2.2 Kierunek krawędziowy, D=2

Na rys. 6.5 i 6.6 podajemy wzór na profil linii dyfrakcyjnej polidyspersyjnych nanoproszków w czterech wersjach:

  1. 1.

    Natężenie: LPGSDD=2(q;R,σ), wzór (3.5.3), rys. 6.5

  2. 2.

    Pochodna po q: δδqLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.5

  3. 3.

    Pochodna po R: δδRLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.6

  4. 4.

    Pochodna po σ: δδσLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.6

Pochodne cząstkowe pozwalają na dużo efektywniejsze korzystanie z (i projektowanie) programów fitujących i modelujących dyfrakcję. W przypadku korzystania z wzorów należy mieć na uwadze pozorne osobliwości (o czym jest mowa w tekście): wektor rozpraszania q może się pojawić w mianowniku, co nie znaczy, że formuła nie jest określona dla q=0. Dla przypadku q=0 należy podać odpowiednią wartość graniczną, zaś wszędzie indziej - wartość bezpośrednio ze wzoru.

Wzór ( Wzór (
LPGSDD=2(q;R,σ) δδqLPGSDD=2(q;R,σ)
Wzór (3.5.3) Pochodna wzoru (3.5.3) po q
-((sqrt(2/M_PI)*Rsr*(-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2))) (2*sqrt(2/M_PI)*Rsr*(-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,3)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)) - (sqrt(2/M_PI)*Rsr*(-((Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* (-(Rsr/(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (2*pow(sigma,2))/ (Rsr*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))))* cos(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)\ ))/(q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))*pow(sigma,2))) + (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (pow(q,2)*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2)) - (2*(1 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)*sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (Rsr*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), pow(Rsr,2)/(2.*pow(sigma,2))))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2))
Figure 6.5: Wzór (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych (po lewej) oraz jego pochodna (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Pochodna wzoru ( Pochodna wzoru (
δδRLPGSDD=2(q;R,σ) δδσLPGSDD=2(q;R,σ)
Pochodna wzoru (3.5.3) po R Pochodna wzoru (3.5.3) po σ
(sqrt(2/M_PI)*pow(Rsr,2)*(-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* pow(sigma,4)) - (sqrt(2/M_PI)* (-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)) - (sqrt(2/M_PI)*Rsr*(-((Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* (q/(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)) - (2*q*pow(sigma,2))/ (pow(Rsr,2)* (1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (2*Rsr*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2))* cos(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)\ ))/(q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))*pow(sigma,2))) + (2*pow(Rsr,2)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*pow(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))),2)* pow(sigma,4)) - (pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2)) - (Rsr* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((-2*pow(q,2)*(1 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,4))/ (pow(Rsr,3)*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (Rsr*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/ pow(sigma,2))*sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)) -((sqrt(2/M_PI)*pow(Rsr,3)*(-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)\ ))/(q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))*pow(sigma,2))))/ (pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* pow(sigma,5))) + (2*sqrt(2/M_PI)*Rsr* (-1 - (Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,3)) - (sqrt(2/M_PI)*Rsr*(-((Rsr*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((-2*q*Rsr)/ (sigma*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (4*q*sigma)/ (Rsr*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (2*pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/ pow(sigma,3))* cos(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)\ ))/(q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))*pow(sigma,2))) - (2*pow(Rsr,3)*pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*pow(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))),2)* pow(sigma,5)) + (2*Rsr* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,3)) - (Rsr* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((4*pow(q,2)*(1 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,3))/ (pow(Rsr,2)*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (pow(Rsr,2)*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/pow(sigma,3)\ )*sin(2*atan((q*pow(sigma,2))/Rsr) - (pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2)))/ (q*(-1 + 2*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2))))* pow(sigma,2))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2))
Figure 6.6: Pochodna wzoru (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych po średnim rozmiarze ziarna (po lewej) oraz po dyspersji rozmiarów (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Uwaga: kod QR tego wzoru może być już trudny do odczytania z wolnej ręki. W razie kłopotów można spróbować unieruchomić telefon względem druku. Powierzchnia kartki powinna być w trakcie odczytu płaska.

6.1.2.3 Kierunek wierzchołkowy, D=3

Na rys. 6.7 i 6.8 podajemy wzór na profil linii dyfrakcyjnej polidyspersyjnych nanoproszków w czterech wersjach:

  1. 1.

    Natężenie: LPGSDD=2(q;R,σ), wzór (3.5.3), rys. 6.7

  2. 2.

    Pochodna po q: δδqLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.7

  3. 3.

    Pochodna po R: δδRLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.8

  4. 4.

    Pochodna po σ: δδσLPGSDD=2(q;R,σ), wzór nie występuje w książce (za długi), rys. 6.8

Pochodne cząstkowe pozwalają na dużo efektywniejsze korzystanie z (i projektowanie) programów fitujących i modelujących dyfrakcję. W przypadku korzystania z wzorów należy mieć na uwadze pozorne osobliwości (o czym jest mowa w tekście): wektor rozpraszania q może się pojawić w mianowniku, co nie znaczy, że formuła nie jest określona dla q=0. Dla przypadku q=0 należy podać odpowiednią wartość graniczną, zaś wszędzie indziej - wartość bezpośrednio ze wzoru.

Wzór ( Wzór (
LPGSDD=3(q;R,σ) δδqLPGSDD=3(q;R,σ)
Wzór (3.5.3) Pochodna wzoru (3.5.3) po q
(-3*Rsr*(-1 - (pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)) (3*sqrt(2/M_PI)*Rsr*(-1 - (pow(Rsr,2)* (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (pow(q,3)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)) - (3*Rsr*((pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,3)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4)) - (pow(Rsr,2)*((2*q*(1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,4)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr)))/pow(Rsr,2) - (2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,2)* pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 0.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* sin(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr)))/Rsr))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))
Figure 6.7: Wzór (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych (po lewej) oraz jego pochodna (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Pochodna wzoru ( Pochodna wzoru (
δδRLPGSDD=3(q;R,σ) δδσLPGSDD=3(q;R,σ)
Pochodna wzoru (3.5.3) po R Pochodna wzoru (3.5.3) po σ
(3*pow(Rsr,2)*(-1 - (pow(Rsr,2)* (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* pow(sigma,4)) - (3*(-1 - (pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)) - (3*Rsr*((pow(Rsr,3)* (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(-1 + pow(Rsr,2)/(2.*pow(sigma,2)),2)*pow(sigma,6)) + (pow(Rsr,3)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*pow(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,6)) - (Rsr*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4)) - (pow(Rsr,2)*(pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))* ((-2*pow(q,2)*(1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,4))/ (pow(Rsr,3)* (1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (Rsr*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/ pow(sigma,2)) + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((2*q*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))/ (pow(Rsr,2)* (1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) - (2*Rsr*atan((q*pow(sigma,2))/Rsr))/pow(sigma,2))* sin(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2)) (-3*pow(Rsr,3)*(-1 - (pow(Rsr,2)* (-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*pow(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* pow(sigma,5)) + (3*sqrt(2/M_PI)*Rsr* (-1 - (pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,3)) - (3*Rsr*(-(pow(Rsr,4)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(-1 + pow(Rsr,2)/(2.*pow(sigma,2)),2)*pow(sigma,7)) - (pow(Rsr,4)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*pow(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)),2)* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,7)) + (2*pow(Rsr,2)*(-1 + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,5)) - (pow(Rsr,2)*(pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* cos(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))* ((4*pow(q,2)*(1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,3))/ (pow(Rsr,2)* (1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (pow(Rsr,2)*log(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2)))/ pow(sigma,3)) + pow(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2), 1.5 - pow(Rsr,2)/(2.*pow(sigma,2)))* ((-4*q*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))*sigma)/ (Rsr*(1 + (pow(q,2)*pow(sigma,4))/pow(Rsr,2))) + (2*pow(Rsr,2)*atan((q*pow(sigma,2))/Rsr))/ pow(sigma,3))* sin(2*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* atan((q*pow(sigma,2))/Rsr))))/ (2.*pow(q,2)*(-1.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* (-1 + pow(Rsr,2)/(2.*pow(sigma,2)))*pow(sigma,4))))/ (sqrt(2*M_PI)*pow(q,2)*(-0.5 + pow(Rsr,2)/(2.*pow(sigma,2)))* pow(sigma,2))
Figure 6.8: Pochodna wzoru (3.5.3) na profil lini dyfrakcyjnej proszku polidyspersyjnego o ziarnach wielościennych po średnim rozmiarze ziarna (po lewej) oraz po dyspersji rozmiarów (po prawej) w formie kodu QR do wczytania telefonem komórkowym i przeniesienia bezpośrednio do programu fitującego. Formuła jest w formacie języka C/C++, podana jako zwykły tekst (zacytowany poniżej). Użyte w programie zmienne to: RsrR, sigmaσ oraz wektor rozpraszania q.
Uwaga: kod QR tego wzoru może być już trudny do odczytania z wolnej ręki. W razie kłopotów można spróbować unieruchomić telefon względem druku. Powierzchnia kartki powinna być w trakcie odczytu płaska.