tutorials:radiation-model-in-crop_model9
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| tutorials:radiation-model-in-crop_model9 [2025/10/31 13:57] – barley1965 | tutorials:radiation-model-in-crop_model9 [2025/11/01 15:40] (current) – barley1965 | ||
|---|---|---|---|
| Line 16: | Line 16: | ||
| </ | </ | ||
| - | Note that we now track assimilates ('' | + | Assimilates are monitored |
| ===== Maintenance Respiration ===== | ===== Maintenance Respiration ===== | ||
| Line 36: | Line 36: | ||
| </ | </ | ||
| - | Note that internode | + | Internode |
| ===== Transport Mechanism ===== | ===== Transport Mechanism ===== | ||
| Line 79: | Line 79: | ||
| </ | </ | ||
| - | This rule ensures leaves retain a minimum amount (0.01) for maintenance while exporting the surplus. | + | This rule ensures leaves retain a minimum amount (0.01) for maintenance while exporting the surplus. |
| **b) Internode to Internode Transport** (L. 260-268): | **b) Internode to Internode Transport** (L. 260-268): | ||
| Line 110: | Line 110: | ||
| } | } | ||
| </ | </ | ||
| - | This final rule expresses transport in only one direction, i.e. fruits are //absolute sinks// (which is wrong, because young fruit are often green and have been shown to carry out photosynthesis). | + | This final rule expresses transport in only one direction, i.e. fruits are //absolute sinks// (as usual, we simplify things here, because young fruit are often green and have been shown to carry out photosynthesis). |
| ===== Fruit Set Decision Based on Sugar Availability ===== | ===== Fruit Set Decision Based on Sugar Availability ===== | ||
| - | The model now makes fruit formation dependent on sugar available | + | The model now makes fruit formation dependent on the availability of a threshold amount of sugar in the nearest leaf (L. 169-174): |
| <code java> | <code java> | ||
| - | fl: | + | fl: |
| - | {float sugar = first((* Leaf *)[as]); | + | {float sugar = lf[as]; |
| println(" | println(" | ||
| } | } | ||
| - | if(sugar> | + | if(sugar> |
| else (fl); | else (fl); | ||
| </ | </ | ||
| Note that a '' | Note that a '' | ||
| - | Availability of sugar is calculated by querying '' | + | Availability of sugar is calculated by querying '' |
| ===== Fruit Growth Competition ===== | ===== Fruit Growth Competition ===== | ||
| - | Multiple fruits compete for available resources using an age-based weighting system (L. 209-225): | + | Multiple fruits compete for available resources using an age-based weighting system (L. 214-226): |
| <code java> | <code java> | ||
| fr:Fruit ::> { | fr:Fruit ::> { | ||
| Line 141: | Line 141: | ||
| float sugar = (totalAgeWeight > 0) ? | float sugar = (totalAgeWeight > 0) ? | ||
| (totalSugar * ageWeight) / totalAgeWeight : totalSugar / fruitCount; | (totalSugar * ageWeight) / totalAgeWeight : totalSugar / fruitCount; | ||
| - | </ | + | |
| - | Younger fruits receive proportionally more resources through exponential age weighting, simulating their stronger sink strength. | + | Younger fruits receive proportionally more resources through exponential age weighting, simulating their stronger sink affinity (thereby compensating their smaller size). |
| ===== Visual Feedback ===== | ===== Visual Feedback ===== | ||
| Internodes change color based on their sugar content, providing visual feedback of the transport process: | Internodes change color based on their sugar content, providing visual feedback of the transport process: | ||
| <code java> | <code java> | ||
| - | itn.(setShader(new RGBAShader(itn[as]*2000.0, itn[as]*1000, itn[as]))); | + | itn.(setShader(new RGBAShader(itn[as]*20.0, itn[as]*10, itn[as]))); |
| </ | </ | ||
| - | ===== Tasks for Exploration ===== | + | {{:tutorials:transport.png?direct& |
| - | 1. Run the model and observe sugar flow: Watch how internodes change color as sugar moves through them. | + | |
| - | 2. Modify DIFF_CONST: Try values between 0.0001 and 0.01. How does this affect: | + | |
| - | o Speed of sugar movement? | + | |
| - | o Final fruit size? | + | |
| - | o Number of successfully developed fruits? | + | |
| - | 3. Change | + | |
| - | 4. Adjust maintenance respiration: | + | |
| + | ===== Fruit growth: graphical output ===== | ||
| + | In order to see the development in time of each fruit, we have created a graph "Fruit growth. Here is how the associated data table (fruitdata) is filled: | ||
| + | <code java> | ||
| + | fruitdata.(setColumnKey((int)fr[no]-1, | ||
| + | if(time> | ||
| + | </ | ||
| + | {{: | ||
| + | {{: | ||
| + | {{: | ||
| + | {{: | ||
| + | |||
| + | ===== Tasks for Exploration ===== | ||
| + | - Run the model and observe sugar flow: Watch how internodes change color as sugar moves through them! | ||
| + | - Modify DIFF_CONST: Try values between 0.0001 and 0.01. How does this affect: Speed of sugar movement? Final fruit size? Number of successfully developed fruits? | ||
| + | - Change transport frequency: Modify the condition if(time % 24 == 0) to different values (e.g., % 12 for twice-daily transport). What impact does this have? | ||
| + | - Adjust maintenance respiration: | ||
| + | - The different Fruit growth graphs have been produced by modifying a single parameter: which one could that have been? (Hint: have a look at the run method, where new lateral buds are inserted). | ||
| ===== Biological Relevance ===== | ===== Biological Relevance ===== | ||
| This transport model introduces key physiological concepts: | This transport model introduces key physiological concepts: | ||
| - | • Source-sink relationships: | + | - Source-sink relationships: |
| - | • Phloem transport: Simplified as diffusion along concentration gradients | + | |
| - | • Competition for resources: Multiple sinks compete for limited assimilates | + | |
| - | • Maintenance respiration: | + | |
| - | • Sink strength: Younger fruits have stronger sink strength | + | |
tutorials/radiation-model-in-crop_model9.1761915468.txt.gz · Last modified: 2025/10/31 13:57 by barley1965
