I'm not real sure about the exact aim of your question, but this answer will be a little bit beside it anyway, so it doesn't matter too much.
I'd like to answer about solvability in general.
To solve a circuit, we generally have a system of simultaneous equations: one equation for each node (or loop) in the circuit, and expressions for the current flows (or voltages in common) between them. When the circuit is linear, the coefficients are fixed, and linear algebra (a formalization of simultaneous equations) gives a simple solution: matrix inversion.
When the elements are nonlinear, obviously linear algebra is no longer applicable, and we'll have to figure it out some other way.
For the R-D circuit shown, we can assume a relation like the Shockley equation,
$$ I = I_s \left[ \exp \left( {\frac{V_F}{n V_{T}}} \right) - 1 \right] $$
where \$I\$ is diode current, \$I_s\$ is the saturation current, \$V_F\$ the forward voltage, \$V_{T} = \frac{k_B T}{e}\$ the thermal voltage (about 26mV at room temperature), and \$n\$ the emission coefficient (typically ~2 for rectifiers). (In general, \$I_s\$ varies with temperature, a bit more slowly.)
If we plug this into the node equations, we have:
simulate this circuit – Schematic created using CircuitLab
At the V2
node,
$$ \frac{(V_1 - V_2)}{R_1} - I_s \left[ \exp \left( {\frac{(V_2 - 0)}{n V_{T}}} \right) - 1 \right] = 0 $$
We get an expression for V2
in terms of V1
, as we expect. But \$V_2\$ appears on both sides of the exponential; we cannot reduce this equation further.
This is called a transcendental function. It has no analytical, closed-form solution; like some algebraic numbers are only representable as the solution to a given equation, so too we have some transcendental numbers only representable by equations such as these.
Fortunately, as engineers, we aren't concerned about exact (and anyway unknowable) numbers; these equations are generally solved easily by numerical methods, for which the value converges quickly.
If we take some typical values \$I_s\$ = 1nA, \$V_T\$ = 26mV, \$n\$ = 2, \$V_1\$ = 5V and \$R_1\$ = 1kΩ, we can solve for \$V_1\$ in terms of all these (and itself inside the exponential), and feed it into itself and see if it converges. Or if it diverges, we can invert the equation and try again (in terms of variables and the logarithm of itself).
Then we'll have,
$$ V_2 = R_1 I_s + V_1 + \left( - R_1 I_s \right) \exp \left( \frac{1}{n V_T} V_2 \right) $$
which notice has the form \$x = a + b e^{c x}\$, with \$a = R_1 I_s + V_1\$, \$b = -R_1 I_s\$ and \$c = \frac{1}{n V_T}\$. This type of transcendental function can be solved in terms of the Lambert W function (which is itself transcendental of course, but we only need to solve for its general case to also solve any particular equation like this).
If we iterate, we get this:
This is easy to do right in ones' [desktop] browser, by the way, so I'm using Javascript to do this a little faster.
function v2(v) { var R1 = 1000, Is = 1e-9, V1 = 5, n = 2, Vt = 0.026;
return R1 * Is + V1 - R1 * Is * Math.exp(v / (n * Vt)); }
v2(.8)
> 0.19765366429140485
v2($_)
> 4.999956252659821
v2($_)
> -5.737456800804937e+35
v2($_)
> 5.000001
v2($_)
> -5.74239615516765e+35
v2($_)
> 5.000001
Oh dear, it diverged, and produces alternating absurd values. Well, clearly the exp form was the incorrect choice; let's invert it and try the log form:
$$ V_2 = n V_T \ln \frac{V_1 + R_1 I_s - V_2}{R_1 I_s} $$
function v2(v) {var R1 = 1000, Is = 1e-9, V1 = 5, n = 2, Vt = 0.026;
return n * Vt * Math.log((V1 + R1 * Is - v) / (R1 * Is)); }
v2(1)
> 0.7904938687923749
v2($_)
> 0.7931485186473244
v2($_)
> 0.7931157154394317
v2($_)
> 0.7931161209112584
v2($_)
> 0.793116115899347
v2($_)
> 0.7931161159612977
v2($_)
> 0.793116115960532
v2($_)
> 0.7931161159605414
v2($_)
> 0.7931161159605413
v2($_)
> 0.7931161159605413
Which you can see converges quickly to a useful value, and within numerical accuracy (JS uses double precision) in only nine iterations. So that's not very painful.
As for the Lambert solution, Wolfram Alpha provides a convenient means to test:
-10^-6 - 0.052LambertW(-5.000001/0.052e^(-5.000001*10^-6)) - Wolfram Alpha
but I get a complex value. I probably made a transcription error somewhere...
Anyway, even more general methods are used by circuit simulators, which might not even have a symbolic representation of the device (i.e., the number falls out of a computer function call, not provided as symbols in an equation). In that case, maybe a derivative is available (the slope of the equation at the given values), maybe it has to be calculated as well (sampling nearby points and taking their slope). This then computes an approximation, which is iterated until the desired accuracy is reached.
These methods are rather complex to approach as a beginner — suffice it to say, where nonlinearity goes, solutions follow with arbitrary complexity. We can, after all, compute arbitrary functions with systems of equations — they are Turing complete. The best we can do is apply unlimited cleverness to try and reduce the problem, or brute-force it by taking tiny steps of crude approximations. As it happens, both are effective.
So, be thankful when you have only a linear system in your homework, I guess!
tl;dr: You can't solve that kind of system as resistors — but there may still be ways to approach it. In general, nonlinear systems need not have a complete solution, but we can still make useful approximations to work with them.