Is it possible to calculate a diode's V-I curve?
LEDs and light bulbs have an essentially different dependance on temperature.

In light bulbs the non-linearity of the V-I char is essentially due to the operating temperature: the hotter the filament, the harder it is for electrons to travel through madly-hot atoms, the higher the resistivity. 
The key point here is that the temperature rises because current is passing through the filament: you cannot have a functioning light bulb at ambient temperature, because if you somehow manage to cool it down, it won't emit visible light.

In LEDs, even though the temperature does have a primary role (because it affects the tail of the electron population distribution that will have enough energy to cross the band gap), you can cool the device at the temperature you like and it will still work as intended (actually better).

The corresponding resistance of a LED is better seen as the (local, i.e. in a neighbor of your operating point) slope of the V-I characteristic supplied to you by the manufacturer. 



You can model a diode characteristic with an exponential curve, and use that in your simulation. The simplest 'exponential curve' model requires you to specify the reverse saturation current for the device.

Look at the Shockley diode equation here: en.wikipedia.org/wiki/Diode.

\$ I=I_{\mathrm {S} }\left(e^{\frac {V_{\text{D}}}{nV_{\text{T}}}}-1\right) \$

(Here \$ V_T \$ is the thermal voltage that depends on temperature; its value at ambient temperature - about 300 K - is around 25-26 mV; \$n\$ is just a factor that will help you tune your curve to make it more similar to the actual device's.)

The curve is just an exponential translated downward by an amount corresponding to the inverse saturation current



Image taken from here.

Note that the Shockley equation does not model the breakdown behavior, that is that other exponential runoff that happens for big negative voltages. More elaborate models (such as those used by SPICE) can do that and much more, but this is beyond the scope of this answer. You can read more on this page from Wikipedia.