How can i plot this trascendental function?

I have been learning mathematica for a month now, and i want to solve one of my thesis objectives with mathematica, which is to plot this trascendental function:

Sigmamesonmass.png

and so far i´ve been receiving error messages like:

  • “$RecursionLimit::reclim2: Recursion depth of 1024 exceeded during evaluation of mSigma[0.135].”

  • “Power::infy: Infinite expression 1/0.^1. encountered.”
    -" Infinity::indet: Indeterminate expression E^ComplexInfinity encountered."
    etc.
    this is my code:

     ClearAll[mSigma, gSigmaPiPi, mPi, Lambda, k]
     mPi = 0.13957;
     Block[{$MaxExtraPrecision = Infinity}, 
       mSigma[T_] := 
        mSigma[T] /. 
         FindRoot[
          mSigma[T]^2/mSigma[0]^2 == 
           1 + (3/2)*(gSigmaPiPi^2)*(mPi^2)/(8*Pi^2*mSigma[0]^2)*
             NIntegrate[
              Sqrt[E1^2 - 
                 mPi^2]*((2/((Exp[E1/(T)] - 1)) + 1)/(E1 - mSigma[T]^2/4 - 
                   1*^-20)), {E1, mPi, mSigma[T]/2 - 1*^-20, 
               mSigma[T]/2 + 1*^-20, 
               Lambda},(*Interesting command to avoid singularities*)
              Method -> {"GlobalAdaptive", "SymbolicProcessing" -> 0, 
                "SingularityHandler" -> "Subtracting"}, MaxRecursion -> 20,
               PrecisionGoal -> 6, AccuracyGoal -> 6, 
              WorkingPrecision -> 20], {mSigma[T], 550}]
              ];
     
     Tc = 0.150;
     gSigmaPiPi = 14.02;
     Lambda = 1.4;
     Tlist = Range[0.9*Tc, Tc, 0.1];
     sigmaList = Table[{T, mSigma[T]/mSigma[0]}, {T, Tlist}];
     ListPlot[sigmaList, AxesLabel -> {"T/Tc", "m_sigma(T)/m_sigma(0)"}]
    

I even used MaxPrecision in order to not have these infinities and 1/0 errors
Any thoughts on how can i attack this problem?
EDIT: i have a typo in the latex equation, it should be E^2 in the denominator of the integrand
[1]: https://community.wolfram.com//c/portal/getImageAttachment?filename=Sigmamesonmass.png&userId=2900165

I see unevaluated (lower case findroot, integrate, 1*^-20 → 1.0*^-20)

findRoot[ 
mSigma[T]^2/mSigma[0]^2 == 
1 + 1/(16 \[Pi]^2 mSigma[0]^2)  3  gSigmaPiPi^2   mPi^2 * 
integrate[((1 + 2/(-1 + E^(E1/T))) *
              Sqrt[   E1^2 - mPi^2])  /  (-1.`*^-20 + E1 - mSigma[T]^2/4),
             {E1,    mPi,    -1.`*^-20 + mSigma[T]/2, 1.`*^-20 + mSigma[T]/2  ,  Lambda}], 
             {mSigma[T], 550}]

There is a fourth parameter Lambda in the domain bracket of integrate. Whats it for?

You cannot use FindRoot without giving a numeric value to mSigma[0]. In the TeX equation there is a parameter k which is missing from the code.

Lambda is the upper integration limit, it´s a cut-off frequency for the integral, the original upper limit was infinity but then the integral becomes divergent

But integrate’ s domain list has three parameters only {x, xmin , xmax}, or is there a method taking four?

I used this syntax from documentation center
“NIntegrate[f,{x,x0,x1,…,xk}] tests for singularities in a one-dimensional integral at each of the intermediate points xi. If there are no singularities, the result is equivalent to an integral from x0 to xk. You can use complex numbers xi to specify an integration contour in the complex plane.”