Global time acceleration is easy, as mentioned (clock time, game still plays "normal"). With a little scripting you could probably get exactly what you want. Eg, change the acceleration rate at night, either done at a certain time, or by user action. Or, you could just skip to a specific time, again passively or via user action. Eg, quadruple the passage of time at 8pm, return to your original setting at 7am, or, jump directly to 7am either automatically at a certain time, or have a user action to do so so you can have some night time, but jump ahead when you've had enough.
Don't have something on hand, but the scripting commands should be fairly straightforward: Time = XXXX to activate at a certain time, either skip time or setacctime to either skip X hours, or change acceleration rate.