This code implements the method of Hunt / Kennedy (Finance Stochast. 2, 275–293 (1998)) to find the price of a irregular european swaption;
For getting the code running one has to do some additional work on setting up the instruments expected, i.e. an irregular swap and an irregular swaption. The irregular swap shall be set up by using appropriate legs. Legs are used because here the irregular features can be specified easily. Therefore it is basically derived from the swap and only altered in respect of adding the ususal Payer/Receiver specification.
For the same reason the swaption instrument must be alteres to make it working with this particular type of swap.