I couldn't find this anywhere, so I discovered this with SCIENCE!
There is a hardcoded maximum yield for each ore type:
Common Ore MaxYield = 1000
Rare Ore MaxYield = 500
Using the data from the mine yield sheet, we calculate the initial, peak, and minimum yields:
InitialYield = MaxYield * InitialYield% / 100
PeakYield = MaxYield * PeakYield% / 100
MinYield = MaxYield * MinYield% / 100
The yield formula is as follows where TrucksLoaded is the number of trucks already loaded prior to loading the current truck:
if (TrucksLoaded > MinTruck)
Yield = MinYield
else if (TrucksLoaded > PeakTruck)
Yield = PeakYield - (TrucksLoaded - PeakTruck) * (PeakYield - MinYield) / (MinTruck - PeakTruck)
else
Yield = InitialYield + TrucksLoaded * (PeakYield - InitialYield) / PeakTruck
Yield rounds down due to int truncation.
Bonuses from research are applied after calculating the yield.
Yield = Yield + Yield * Bonus% / 100
Metallogeny
20% bonus to yield for Common Ore.
Rare ore extraction
20% bonus to yield for Rare Ore.
Magma Vents do not use the mine yield sheet. Instead, the building sheet sets the production capacity.
There is no formula for Magma yield based on trucks loaded.
From the building sheet: Magma Yield = 100
Magma Purity Control
Set to 150 production capacity by the research topic found in the tech sheet.