# Usage of tadpoles equations

The handling of tadpole equations is sometimes a bit tricky. Especially if one wants to calculate the mass spectrum with the help of SPheno for a model, he has to choose a set of parameters which is fixed by the minium conditions of the vacuum. In the MSSM, the standard choice is mu and B_mu, but what can be used for more complicated models? So, it's good to play a bit with the tadpole equations to see what can be done. For this purpose we run the NMSSM with SARAH:

```
<<SARAH.m;
Start["NMSSM"];
```

And the first step is to prepare the tadpole equations. Here, we assume for simplicity that we just have real parameters.

`equations = (TadpoleEquations[EWSB]==0) /. conj[x_] -> x /. T[x_] :> ToExpression["T" <> ToString[x]];`

Now, we can easily solve those expressions with resepct to `{mHd^2, mHu^2, ms^2}`

:

`solution=Solve[equations, {mHd2, mHu2, ms2}];`

A nice cross check is always to plug this solution into mass matrices involving Goldstones and check the eigenvalues. Here, we use the charged Higgs matrix

`Simplify[Eigenvalues[MassMatrix[Hpm] /. solution[[/1|1]] /. conj[x_] -> x]]`

and the first eigenvalues shows the correct dependence on the gauge fixing parameter

`(g2^2*(vd^2 + vu^2)*RXi[Wm])/4`

while the second eigenvalue is independent of `RXi`

. The same can be observed when using `MassMatrix[Ah]`

.

If one wants to check for other combinations, there is one caveat: if `x`

and `F[x]`

appear in the equations, Mathematica can't solve the equations with respect to x. Hence, we have to rename `T[\[Lambda]]`

and `T[\[Kappa]]`

to get an “atomic” element. Note, this is usually done automatically by SARAH, when it tries to find the solution during `MakeSPheno[]`

for the given set of parameters. Here, we have to do it by hand:

`equations = equations /. T[x_] :> ToExpression["T" <> ToString[x]]`

and now we can choose for instance,

`sol = Solve[equations, {vS, T\[Lambda], ms2}]`

and see that also a solution exists, i.e. this would be another possible choice. Even combinations without any soft-mass term exist, which might be favored by those who want to have some strict unification of all scalars at the GUT scale. Just pick your favorite solution, edit `SPheno.m`

correspondingly and run `MakeSPheno[]`

and you'll have after a couple of minute a spectrum generator fitting to your demands.