flow_fractions_from_lorenz
Generate idealized flow distributions from Lorenz coefficients to model reservoir heterogeneity for simulation, waterflood prediction, and sweep efficiency analysis.
Instructions
Generate flow fractions from Lorenz coefficient.
SYNTHETIC FLOW PROFILE - Creates idealized flow distribution matching a specified Lorenz coefficient. Generates a Lorenz curve (cumulative flow vs cumulative capacity) that honors the target heterogeneity level.
Parameters:
value (float, required): Target Lorenz coefficient (0-1). Must be 0 ≤ L ≤ 1. Typical: 0.2-0.7. Example: 0.5 for moderate heterogeneity.
Lorenz Curve Generation: Creates a curve showing:
X-axis: Cumulative storage capacity (kh fraction)
Y-axis: Cumulative flow capacity (flow fraction)
Curve shape: Determined by Lorenz coefficient
Points: 20 points along the curve for visualization
Curve Behavior:
L = 0: Straight diagonal line (perfect conformance)
L > 0: Curved line below diagonal (flow imbalance)
Higher L: More curvature, greater flow imbalance
Applications:
Reservoir Simulation: Generate layer properties for simulation models
Waterflood Prediction: Predict sweep efficiency from heterogeneity
Sweep Efficiency Estimation: Estimate vertical sweep from Lorenz
Sensitivity Analysis: Test impact of heterogeneity on performance
Conceptual Models: Create idealized reservoir models for studies
Visualization: Plot Lorenz curve to visualize heterogeneity
Returns: Dictionary with:
cumulative_flow_capacity (list): Y-axis values (cumulative flow fractions)
cumulative_storage_capacity (list): X-axis values (cumulative kh fractions)
lorenz_coefficient (float): Target Lorenz coefficient
method (str): "Generated Lorenz curve"
note (str): Visualization guidance
inputs (dict): Echo of input parameters
Common Mistakes:
Lorenz coefficient outside valid range (must be 0-1)
Confusing cumulative fractions with incremental fractions
Not understanding that curve represents idealized distribution
Using curve for non-log-normal distributions (may be inaccurate)
Example Usage:
Result: Lorenz curve with 20 points showing cumulative flow vs cumulative capacity. Curve is below diagonal, indicating flow imbalance (high-k layers produce more than their capacity fraction).
Note: This generates an idealized Lorenz curve. For actual reservoirs,
use lorenz_from_flow_fractions with measured production data. The curve
assumes log-normal permeability distribution. Plot cumulative flow vs
cumulative storage to visualize heterogeneity.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| request | Yes |