Iterative learning control (ILC) algorithms are typically used to iteratively refine the feed-forward control input to a system to achieve an optimized performance objective. Because of its ease of implementation and robustness, ILC has found widespread use in a variety of industrial applications. However, a key limitation of ILC is the requirement that learning has to be re-initiated for each new trajectory, since the tuned control input corresponds to a specific reference trajectory. Thus, the entire tuning process needs to be repeated to generate a new control input even with slight changes in the reference trajectory. This problem is especially critical for applications where the motion trajectories required for different tasks are different. In this paper, we address this issue by designing an algorithm for iteratively learning a system dynamics-related model that is portable from one trajectory to another, namely, a finite length approximation of the impulse response of the inverse of the system. This learned approximation of the inverse model can then be transferred to a new trajectory without relearning. We present theoretical development of convergence, robustness, and performance bounds of the proposed algorithm. Finally, the proposed algorithm is verified both in simulation and implementation on a high precision positioning stage.