# Database or model for plant nutrient requirements with respect to soil and climate?

Microalgae are organisms that can grow in aquatic environments and use light and carbon dioxide (CO2) to create biomass. Research showed that Microalgae biomass can be used as a bio-fertilizer.

My mission is: to find which plants in the world are best suited to arid climates and to arid soil that was treated using the Microalgae biomass.

With the help of a Reddit hero "CarverSeashellCharms," I was able to model which plants in the world can adapt to arid climate/arid soil based on a theory in biology named Species Distribution Modeling (SDM). This model takes in the geographic occurrences of a given plant in the world and based on the soil characteristics and climate variables, it can predict the probability of growing that plant (suitability) at any point in the world. The problem here is: this model considers only the soil characteristics and the climate variables without considering the Microalgae biomass (bio-fertilizer) effect.

So this is my approach to how to model the bio-fertilizer effect:

I'm into calculating a score that models the bio-fertilizer effect (effectiveness) and determining a new final score based on the suitability probability and the bio-fertilizer score.

Let's assume the following values:

Plant Nutrient Requirements:

Req_N = 0.3

Req_P = 0.05

Req_K = 0.2

Soil Chemical Characteristics:

Soil_N = 0.15

Soil_P = 0.02

Soil_K = 0.1

Fertilizer Chemical Characteristics:

Fert_N = 0.1

Fert_P = 0.02

Fert_K = 0.15

Step1: Calculate the nutrient deficiencies/excesses in the soil compared to the plant's requirements:

Deficiency_N = Req_N - Soil_N = 0.3 - 0.15 = 0.15

Deficiency_P = Req_P - Soil_P = 0.05 - 0.02 = 0.03

Deficiency_K = Req_K - Soil_K = 0.2 - 0.1 = 0.1

Step2: Calculate the nutrient contribution of the fertilizer to address the deficiencies:

Contribution_N = min(Deficiency_N, Fert_N) = min(0.15, 0.1) = 0.1

Contribution_P = min(Deficiency_P, Fert_P) = min(0.03, 0.02) = 0.02

Contribution_K = min(Deficiency_K, Fert_K) = min(0.1, 0.15) = 0.1

Step3: Calculate the overall nutrient contribution score (F):

F = (Contribution_N / Fert_N) * (Contribution_P / Fert_P) * (Contribution_K / Fert_K)

= (0.1 / 0.1) * (0.02 / 0.02) * (0.1 / 0.15)

= 1 * 1 * 0.6667

≈ 0.6667

Step4: Calculate the new score based on the suitability probability and the fertilizer score:

Let's say the suitability probability of the plant is 90%. w_s and w_f are 2 weight coefficients.

New Score = (w_s * S) + (w_f * F)

= (0.8 * 0.9) + (0.2 * 0.6667)

≈ 0.85334

The problem here is: To deploy and calculate this score I'm missing The plant nutrients requirements. How to determine the nutrient requirements (needs) of a plant (ex Indian fig, potatoes, ..) in terms of nitrogen (N), phosphorus (P), and potassium (K)... I mean how much nutrients a plant needs on average to grow. I know that the nutrient requirements of a plant can vary depending on factors such as soil fertility, and growth stage, but is there any database or any mathematical model that can model the nutrient requirements of a plant with respect to soil and climatic characteristics?

Note: I'm not a biologist, Just a data science Student. Sorry if the post is too long. I'm open to any biology/math resources and any other inspirations or approaches.