We are implementing Security Constrained Economic Despatch in our jurisdiction.
The model being used is pretty standard but does not use Artificial variables in any of the constraint equations. We are facing a problem of infeasibility quite frequently. How do we identify the exact reason for infeasibility as the data volume is large?
Are there any specific checks that we need to build into the algorithm for this ?

There is no single way of figuring out the source of infeasibility. It very much depends on your knowledge and understanding of the original problem and it's implementation as a model. A good way to go about analyzing infeasibilities is to provide a "feasible" solution to the problem by manually setting the variable level values (x.l(...) = ...) and then generating the model with a full equation listing (option limrow=1e9;) This will flag the constraints that are infeasible with your "feasible" solution in the equation listing.

If you don't want to work with your own feasible solution, you can ask solvers (e.g. Cplex) to provide you with the smallest set of constraints that are infeasible (you need to change the model type to rmip) via the iis option (see https://www.gams.com/latest/docs/S_CPLEX.html#CPLEXiis). You can also ask Cplex you give you the smallest relaxation of your model to make it feasible (look for option FeasOpt: https://www.gams.com/latest/docs/S_CPLE ... LEXfeasopt ).