Consider the following example (I had a lot of trouble finding an example of minimal work, I think it's already compact enough).

```
Omega0 = 1.
t = 2
nAvg = 10
Omegan[n_] : = Omega0 * Sqrt[n + 1]
F[n_] : = By parts[{{Cos[Omegan[{{Cos[Omegan[{{Cos[Omegan[{{Cos[Omegan[n]* t / 2]^ 2 *
ABS[Exp[-nAvg/2]* Sqrt[nAvg]^ n / Sqrt[Factorial[Factorial[Factorial[Factorial[n]]],
0 <= n <= 20}}, 0]NSum[F[F[F[f[n], {n, 1, 100}]
```

If you run this short script, you should return it:

NSum :: nsnum: Summand (or its derivative) […] great message […] It is not

numerical at point n = 16

This problem that I am facing occurs only with some specific function. It happens with this complicated looking function that I gave you, but if you try a simpler one, the script can work correctly.

**My questions :**

First: I would like to understand **why** I have this error

Second: How to solve it?

**Extra question**

Is it really more efficient to use NSum?[] what N[Sum[Sum[Suma[Sum[]]. Because I've read (I do not remember where) that when Mathematica sees N[Sum[Sum[Suma[Sum[]]understands that the sum must be done numerically (instead of trying the symbolic method, THEN numerically approximates).

**Extra infos:**

I've already seen Is this an NSum error?

With some functions it solves the problem to add NSumTerms-> number, with others not. The thing is that I would like to be able to face this problem "in general", so I need to understand what is happening (I read the documentation and I do not).

In summary: how to make numerical sums in general with mathematics? In my specific case I have functions that can be defined in parts. In general, my function can be a product / sum of functions by parts, so it is not obvious at first glance to know the limit of the sum without looking more closely, which I would like to avoid.