An improved engine including a cycloidal rotor having N identical lobes, each lobe having a contour, the contour being defined by a silhouette of the lobe, and a housing having a corresponding set of N+1 lobe-receiving regions, wherein N≥2, for successively receiving the lobes as the rotor rotates about an axis relative to the housing, the housing having (i) a pair of side plates axially disposed on first and second sides of the rotor, each of the side plates defining an interior plane with which the rotor is in contact, and (ii) a peak disposed between each pair of adjacent lobe-receiving regions, at least one working chamber being formed in a space between the rotor and the housing, the at least one working chamber having an exhaust port and an intake port, each port communicating with the at least one working chamber through one of the side plates, such ports being closed successively by the lobes during rotation of the rotor and opened to the at least one working chamber as a given lobe is rotated, the intake port having a top edge and the exhaust port having a top edge, wherein the intake port and the exhaust port are configured so that:
- (a) a leading portion of the top edge of the exhaust port has a contour that matches a first corresponding portion of the contour of the given lobe when the rotor is in an angular orientation just before any opening by the given lobe of the exhaust port, and
- (b) a trailing portion of the top edge of the exhaust port has a contour that matches a second corresponding portion of the contour of the given lobe when the rotor is in an angular orientation when the exhaust port is first fully closed.