Modeling asymmetric slopes in multiple regression

We are modeling the growth and fruition of plants as a function of multiple treatments:

crop\_yield_i \sim best\_yield - \text{penalty}_1 \cdot ( \text{treatment1}_i - \text{optimum1} )^2 - \text{penalty}_2 \cdot ( \text{treatment2}_i - \text{optimum2} )^2 - \dots
\text{penalty}_i \sim Exponential()

Basically, best_yield is what we could potentially get in the ideal circumstances (exposure to the sun, watering, soil chemicals, over 15 compounds in total). Penalties are positive numbers to indicate how bad the crops’ chances are as we move further away from the optimal exposure and/or concentration of chemicals.

Unfortunately, most treatments exhibit asymmetric impact on the overall yield. For example, crops wither very quickly after being overexposed to the Sun, while under exposure is usually benign and does not impact the plant fruition much. Same goes for concentration of chemicals in the soil: After a certain threshold of soil salinity, crops cannot grow at all (a very steep dive in the measurements), while salinity to the left of the optimal concentration (plants usually prefer a certain level of soil salinity) bears little negative impact.

We’d like to learn how we could update the model so it would still find the best_yield, and optimal values for every treatment, and the left and right slopes individually, as caused by under- and over- exposure to a certain factor.

Ideally, the left slope should be a line (underexposure), and the right slope (overexposure) can still be quadratic to let it explain the precipitous drop. Though, for some variables, making the right slope linear as well would make things easier to understand (not all treatments have large negative impacts after overexposure).

And, hopefully, your suggestion would allow us to keep this model small and simple, similar to the way it is right now.