При прибавлении 2 Пи все равно пишет отрицательный фи :(
Нужно было
к ващему ответу отрицательному добавить, точнее 360 градусов.
(Оффтоп)
Код:
a = 4;
b = 4;
q = 3;
Q = a*q;
\[Alpha] = Pi/6;
F = 10;
M = 25;
function[\[Alpha]_] :=
Module[{},(*Telo A-C*)
eq1 = Nax + F*Cos[\[Alpha]] - Ncx == 0;(*Summa Fx*)
eq2 = Nay + F*Sin[\[Alpha]] - Ncy == 0;(*Summa Fy*)
eq3 = F*Cos[\[Alpha]]*b/2 + Ncx*b == 0;(*Summa MomA*)(*Telo B-C*)
eq4 = -Nbx + Ncx == 0;(*Summa Fx*)
eq5 = Nby + Ncy - Q == 0;(*Summa Fy*)
eq6 = M - Ncy*a + Q*a/2 == 0;(*Summa MomB*)
N[sol = Solve[{eq1, eq2, eq3, eq4, eq5, eq6}, {Nax, Nay, Ncx, Ncy,
Nbx, Nby}]];(*Nahodim neizvestnie*)
Na = N[Sqrt[Nax^2 + Nay^2] /. sol];(*Opredelyaem modul reakcii Na*)
Nb = N[Sqrt[Nbx^2 + Nby^2] /. sol];(*Opredelyaem modul reakcii Nb*)
Return[{Na, Nb}];]
Off[FindMinimum::lstol] ;
X1 = {#[[1, 1, 2]], #[[2]]} & @
Reverse[FindMinimum[function[\[Phi] ][[1]], {\[Phi], 0}]] ;
X2 = {#[[1, 1, 2]], #[[2]]} & @
Reverse[FindMaximum[function[\[Phi] ][[1]], {\[Phi], 0}]] ;
X3 = {#[[1, 1, 2]], #[[2]]} & @
Reverse[FindMaximum[function[\[Phi] ][[1]], {\[Phi], Pi}]];
Show[
Plot[function[\[Phi]][[1]], {\[Phi], -2 Pi, 2 Pi},
AxesLabel -> {"\[Alpha]", "Na"}, Frame -> True, Axes -> False,
PlotStyle -> Black],
Graphics[{Blue, PointSize[Large], Point[X1]}],
Graphics[{Red, PointSize[Large], Point[X2]}],
Graphics[{Red, PointSize[Large], Point[X3]}]
]
Еще, в вашем случае функция простая и лучше использовать Maximize[], так как у FindMaximum[] могут быть проблемы с точностью.
Код:
max = Maximize[{function[s][[1,1]],0<=s<=2Pi},s]
min = Minimize[{function[s][[1,1]],0<=s<=2Pi},s]
max[[2,1,2]] / (2 Pi) 360
min[[2,1,2]] / (2 Pi) 360