Unfortunately, as documented under Vectors
, assuming that a symbol is a vector is not compatible with listable operations with explicit vectors:
In[1]:= Assuming[v \[Element] Vectors[2], v + {1, 2}]
Out[1]= {1 + v, 2 + v}
Hence, your definition Heff[t_] := J*m1[t] + B
does not work as we would somehow expect.
You can work around the limitation this way:
gamma = 1; alphag = 0.1; Beff = {0, 0, 10}; z = {0, 0, 1};
J = -1; B = {0, 1, 0};
$Assumptions = (m[t] | m1[t]) \[Element] Vectors[3, Reals];
cons[t_] = Cross[m[t], J*m1[t]] + Cross[m[t], B];
cons1[t_] = Cross[m1[t], J*m[t]] + Cross[m1[t], B];
tGilbdamp[t_] := alphag*Cross[m[t], cons[t]];
tGilbdamp1[t_] := alphag*Cross[m1[t], cons1[t]];
tmax = 100;
LLGS = {m'[t] == -gamma*{cons[t] + tGilbdamp[t]},
m[0] == Normalize[{-Sqrt[3.]/2, -1/2, 0}]};
LLGS1 = {m1'[t] == -gamma*{cons1[t] + tGilbdamp1[t]},
m1[0] == Normalize[{Sqrt[3.]/2, -1/2, 0}]};
sol1 = NDSolve[{LLGS, LLGS1}, {m, m1}, {t, 0, tmax}]