Allow `tan` to be used in `df.eval`.
- [x] closes #55091 (Replace xxxx with the GitHub issue number)
- [x] [Tests added and passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#writing-tests) if fixing a bug or adding a new feature (not explicitly adding brand new tests but there are tests covering all the `_unary_math_ops`.
- [x] All [code checks passed](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#pre-commit).
- [x] ~Added [type annotations](https://pandas.pydata.org/pandas-docs/dev/development/contributing_codebase.html#type-hints) to new arguments/methods/functions.~
- [x] Added an entry in the latest `doc/source/whatsnew/vX.X.X.rst` file if fixing a bug or adding a new feature.

While at it, is it feasible to also add other functions? I noticed the functions supported by NumExpr [here](https://numexpr.readthedocs.io/en/latest/user_guide.html#supported-functions), such as conj, real, imag. > While at it, is it feasible to also add other functions? I noticed the functions supported by NumExpr [here](https://numexpr.readthedocs.io/en/latest/user_guide.html#supported-functions), such as conj, real, imag.

Probably, but I'd prefer to keep this PR as is, since this is pure straight-forward fix.
Adding `where` is discussed here: #34834 .
I can imagine that adding complex-number operation should be easier than that but I'm not sure how well pandas handles them, so I'd prefer to delegate it to separate PR (at very least it would require adding tests) Thanks @domsmrz 