CUDI is the extended Fortran code to calculate the electrodynamic and thermal behaviour of any type of Rutherford cable subject to global and/or local variations in field, transport current, and external heat release. The internal parameters of the cable can be freely varied along the length and across the width, such as contact resistances, critical current, cooling rates etc. In this way, all the typical non-uniformities occurring in a cable, e.g. broken filaments, strand welds, cable joints, and edge degradation can be simulated. Also the characteristics of the strands in the cable can be varied from strand to strand. Heat flows through the matrix, through the interstrand contacts, and to the helium are incorporated, as well as the self-field and selfand mutual inductances between the strands. The main features and structure of the program will be discussed.