I'm sorry, but I've been poking through this for like an hour and I have no idea what your code is doing. Can you minimize this example? Or can you at least pinpoint where you're actually applying the "trapezoidal method" for an integral and what variable is your "lower limit"?
Are the other plots correct? If not, is it the same problem?
Your final plot is based on spisoksigmaPSKRR[[1]][[iendRR]] and spisoksigmaPSKRP[[1]][[iendRP]] where iendRR and iendRR are both 41. I'd recommend you pull out that slice of data, figure out by what factor it deviates from the expected, and then see where in your code that factor might have been changed/misapplied/whatever.
Alternatively, maybe just explain what these functions are and let us help you start from the beginning. That's probably easier than reverse-engineering this wall of code.
FWIW, this site isn't intended as a place for free debugging services. I probably won't spend any more time on this if you can't isolate the problem to a specific programming question. Maybe someone else has the time to spend on this.