comparison test-data/input/example_01/farmer-pl.txt @ 0:50112d3941d8 draft

"planemo upload for repository https://forgemia.inra.fr/insilicow/insilicow-tool commit a01dd8fc54d5015e703722d7acb8db4b54b4a468"
author siwaa
date Mon, 07 Apr 2025 15:18:25 +0000
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:50112d3941d8
1 #################################################################################################################
2 # #
3 # InSiliCow: Farm Management #
4 # #
5 #################################################################################################################
6
7 #################################################################################################################
8 #====== Preprocessor: specification of included files #
9 #################################################################################################################
10
11 @include farmer-log.txt
12 # provides the action log_olivier
13 # call the action log_olivier every hour
14
15 #################################################################################################################
16 #====== Initialization of simulation #
17 #################################################################################################################
18
19 #______ Simulation time range
20
21 init{
22 begin_date = 1970-01-01 00:00:00 # 1970-01-01 00:00:00
23 end_date = $end_year$-12-31 23:59:59 # 1975-02-20 23:59:59
24 output_db = events.sqlite
25 name = $sim_id$
26 }
27
28 #______ Models
29
30 param_general{
31 garuns_type = garuns_olivier
32 rpm_type = rpm_lite
33 abortion_type = abortion_olivier
34 }
35
36 #______ Stoechio
37 stoechio{
38
39 }
40
41 #################################################################################################################
42 #====== Genetic Scaling Parameters (GSP): defines individual cow performance #
43 # #
44 #======> in GARUNS model #
45 #GSP (unit) : Name Default | Proxy for #
46 #WM (Kg) : Mature non labile body mass 450 ± 25 | Format #
47 #khi_M (%) : Target labile:non-labile mass ratio 0.33 ± 0.03 | Body fatness #
48 #b0 (1/d) : Reserves storage rate 1.6 ± 0.16 | Reserve lability #
49 #nu_X (-) : Labile body mass mobilization index 1.0 ± 0.1 | Maternal investment #
50 #nu_Y (-) : Milk yield index 1.0 ± 0.1 | Milk potential #
51 #nu_F (-) : Milk fat secretion index 1.00 ± 0.02 | Milk fat content #
52 #nu_P (-) : Milk protein secretion index 1.00 ± 0.02 | Milk protein content #
53 #eD_star (MJ ME/Kg DM) : Optimal diet energy content 12.3 ± 0.5 | Energy intake capacity #
54 #NDF_star (Kg NDF/Kg DM): Optimal fiber energy content 0.5 ± 0.02 | Fiber intake capacity #
55 # #
56 #======> in RPM model #
57 #nu_I (-) : Conception probability threshold 0.026 ± 0.007 | Fertility #
58 #nu_B (-) : Puberty index 1.70 ± 0.07 | Age at 1st ovulation #
59 #nu_Z (-) : Follicular dynamics rate 1.00 ± 0.02 | Estrous duration #
60 #################################################################################################################
61
62 #################################################################################################################
63 #====== Transmission of Genetic Scaling Parameters (GSP) #
64 # > genetic_sd defines the Mendelian sampling standard deviation for the calculation of the GSP of #
65 # a newborn calf : GSP_newborn ~ Normal [ (GSP_mother + GSP_father)/2 , GSP_sd ] #
66 #################################################################################################################
67
68 genetic_sd{
69
70 garuns_olivier.WM{
71 sd = 50
72 min = 200
73 max = 800
74 }
75
76 garuns_olivier.khi_M {
77 sd = 0.06
78 min = 0.1
79 max = 0.6
80 }
81
82 garuns_olivier.b0{
83 sd = 0
84 min = 0.80
85 max = 2.40
86 }
87
88 garuns_olivier.nu_X{
89 sd = 0
90 min = 0.2
91 max = 1.8
92 }
93
94 garuns_olivier.nu_Y{
95 sd = 0.1
96 min = 0.2
97 max = 1.8
98 }
99
100 garuns_olivier.nu_F{
101 sd = 0
102 min = 0.50
103 max = 1.50
104 }
105
106 garuns_olivier.nu_P{
107 sd = 0
108 min = 0.50
109 max = 1.50
110 }
111
112 garuns_olivier.eD_star{
113 sd = 0
114 min = 9.0
115 max = 15.0
116 }
117
118 garuns_olivier.NDF_star{
119 sd = 0
120 min = 0.10
121 max = 0.90
122 }
123
124 rpm_lite.nu_I{
125 sd = 0.007
126 min = 0.00
127 max = 0.20
128 }
129
130 rpm_lite.nu_B{
131 sd = 0.07
132 min = 1.20
133 max = 2.20
134 }
135
136 rpm_lite.nu_Z{
137 sd = 0.02
138 min = 0.90
139 max = 1.10
140 }
141 }
142
143 #################################################################################################################
144 #====== Initialization of cows #
145 #################################################################################################################
146
147 ####### DEFAULT COW #############################################################################################
148 init_cow{
149 name=cow_default
150
151 ### ABORTION rules acording to days in pregnancy (dip)
152 abortion_olivier.delta = constant 3.0 # days (compute every delta)
153 abortion_olivier.enabled = sometime
154 # never : no abortion,
155 # always : always abort,
156 # sometime : abort according to abortion_olivier.abo
157 # and abortion_olivier.dip
158
159 ### Days in pregnancy (dip) cutoffs (to cut gestation in early embryo, late embryo and fetal stages)
160 # Default intervals: Early embryo [0;17] Late embryo [17;64] Fetal [64;+inf]
161 abortion_olivier.dip = vector constant 17 ; constant 64
162
163 ### Daily probability of abortion for each intervals
164 # Default probabiliies : E: 0.0230 L: 0.0096 F: 0.0004
165 abortion_olivier.abo = vector constant 0.02 ; constant 0.005 ; constant 0.0004
166
167 ### GARUNS & RPM_lite Genetic Scaling Parameters
168 # Default constant values
169 garuns_olivier.WM = constant 450 #450
170 garuns_olivier.khi_M = constant 0.30 # 0.33
171 garuns_olivier.b0 = constant 1.6 # 1.6
172 garuns_olivier.nu_X = constant 1 # 1.0
173 garuns_olivier.nu_Y = constant 1.1 # 1.0
174 garuns_olivier.nu_F = constant 1 # 1.0
175 garuns_olivier.nu_P = constant 1 # 1.0
176 garuns_olivier.eD_star = constant 10.7 # 10.7
177 garuns_olivier.NDF_star = constant 0.5 # 0.5
178 rpm_lite.nu_B = constant 1.7 # 1.7
179 rpm_lite.nu_Z = constant 1 # 1.0
180 rpm_lite.nu_I = constant 0.025 # 0.026
181 }
182
183 ####### RANDOM COW ##############################################################################################
184 init_cow{
185 name=cow_random
186
187 ### ABORTION rules acording to days in pregnancy (dip)
188 abortion_olivier.delta = constant 3.0 # days (compute every delta)
189 abortion_olivier.enabled = sometime
190 # never : no abortion,
191 # always : always abort,
192 # sometime : abort according to abortion_olivier.abo
193 # and abortion_olivier.dip
194
195 ### Days in pregnancy (dip) cutoffs (to cut gestation in early embryo, late embryo and fetal stages)
196 # Default intervals: Early embryo [0;17] Late embryo [17;64] Fetal [64;+inf]
197 abortion_olivier.dip = vector constant 17 ; constant 64
198
199 ### Daily probability of abortion for each intervals
200 # Default probabiliies : E: 0.0230 L: 0.0096 F: 0.0004
201 abortion_olivier.abo = vector constant 0.02 ; constant 0.005 ; constant 0.0004
202
203 ### GARUNS & RPM_lite Genetic Scaling Parameters
204 # Random values
205 garuns_olivier.WM = norm99 450 50 #450 ± 25
206 garuns_olivier.khi_M = norm99 0.30 0.06 # 0.33 ± 0.03
207 garuns_olivier.b0 = norm99 1.6 0 # 1.6 ± 0.16
208 garuns_olivier.nu_X = norm99 1 0 # 1.0 ± 0.10
209 garuns_olivier.nu_Y = norm99 1.1 0.1 # 1.0 ± 0.10
210 garuns_olivier.nu_F = norm99 1 0 # 1.0 ± 0.02
211 garuns_olivier.nu_P = norm99 1 0 # 1.0 ± 0.02
212 garuns_olivier.eD_star = norm99 10.7 0 # 10.7 ± 0.5
213 garuns_olivier.NDF_star = norm99 0.5 0 # 0.5 ± 0.02
214 rpm_lite.nu_B = norm99 1.7 0.07 # 1.7 ± 0.07
215 rpm_lite.nu_Z = norm99 1 0.02 # 1.0 ± 0.02
216 rpm_lite.nu_I = norm99 0.025 0.007 # 0.026 ± 0.007
217 }
218
219 #################################################################################################################
220 #====== Breeding #
221 #################################################################################################################
222
223 #______ Bull semen: quality = 0.95 ± 0.05 ; sexratio = 0 % female
224
225 breed{
226 breed = bull_default
227 }
228
229 init_bull{
230 name=semen_default
231 bull.breed_name = bull_default
232 bull.semens_quality = norm99 0.95 0.05 # a number between 0.0 (=never works) and 1.0 (=perfect)
233 bull.female_ratio = constant 0 # offspring sex ratio. 1.0 = 100%female, 0.0=0%female
234 }
235
236 #_______Breeding season: every year from *-03-21 00:00:00 to *-06-21 23:59:59
237
238 condition{
239 type = chron_range
240 name = breeding_season
241 from = *-03-21 00:00:00 #*-03-21 00:00:00
242 to = *-06-21 23:59:59 #*-06-21 23:59:59
243 }
244
245 trigger{
246 type = chron
247 name = breeding_start
248 scheme = *-03-21 00:00:00
249 }
250
251 # link{
252 # trigger = breeding_start
253 # action = log_db Start_breeding_season
254 #}
255
256 trigger{
257 type = chron
258 name = breeding_end
259 scheme = *-06-21 23:59:59
260 }
261
262 #link{
263 # trigger = breeding_end
264 # action = log_db Stop_breeding_season
265 #}
266
267 #______ Estrous detection method ________________________________________________________________________________
268
269 estrous_detection_method{
270 name=estrous_detection_default
271
272 #When do we observe oestruses
273 time_slice = 06:00:00 18:00:00 #00:00:01 23:59:59
274
275 #estrogene is transformed to an expression using a Hill function
276 expression_threshold=0.75 #default 0.75
277 expression_stiffness=7 #default 7
278
279
280 #the oestrus worth an insemination if the memory function is above this threshold
281 #THIS threshold is scaled for an observation all the day long
282 #if you observe half a day multiply this threshold by 0.5
283 #1.0 is a reasonable base value for all day observations
284 detection_threshold=0.05 # 0.1
285
286 #then, the oestrus is truely detected with a chance of
287 sensitivity = 0.75 #0.7
288
289 #then an average of wrong_oestrus_per_day are generated
290 wrong_oestrus_per_day = 0 #0.00
291 }
292
293
294 #______ Insemination _________________________________________________________________________________
295
296 # Insemination is performed once a day when estrous is detected
297
298 state{
299 state = ALREADY_INSEMINATED
300 }
301
302 trigger{
303 type=custom
304 name=tr_delete_ALREADY_INSEMINATED
305 }
306
307 link{
308 trigger = tr_delete_ALREADY_INSEMINATED
309 action = state_delete ALREADY_INSEMINATED
310 }
311
312 link{
313 trigger = estrous
314 condition = is_in BREEDING
315 condition = not is_pregnant
316 condition = not is_in ALREADY_INSEMINATED
317 action = state_add ALREADY_INSEMINATED
318 action = trigger_later tr_delete_ALREADY_INSEMINATED 1
319 action = log_db 01_INSEMINATION
320 action = inseminate semen_default
321 }
322
323 #################################################################################################################
324 #====== Initialization of herd #
325 #################################################################################################################
326
327 trigger{
328 type = custom
329 name = init_day_01
330 }
331 trigger{
332 type = custom
333 name = init_day_02
334 }
335 trigger{
336 type = custom
337 name = init_day_03
338 }
339 trigger{
340 type = custom
341 name = init_day_04
342 }
343 trigger{
344 type = custom
345 name = init_day_05
346 }
347 trigger{
348 type = custom
349 name = init_day_06
350 }
351 trigger{
352 type = custom
353 name = init_day_07
354 }
355 trigger{
356 type = custom
357 name = init_day_08
358 }
359 trigger{
360 type = custom
361 name = init_day_09
362 }
363 trigger{
364 type = custom
365 name = init_day_10
366 }
367 trigger{
368 type = custom
369 name = init_day_11
370 }
371 trigger{
372 type = custom
373 name = init_day_12
374 }
375 trigger{
376 type = custom
377 name = init_day_13
378 }
379 trigger{
380 type = custom
381 name = init_day_14
382 }
383 trigger{
384 type = custom
385 name = init_day_15
386 }
387 trigger{
388 type = custom
389 name = init_day_16
390 }
391 trigger{
392 type = custom
393 name = init_day_17
394 }
395 trigger{
396 type = custom
397 name = init_day_18
398 }
399 trigger{
400 type = custom
401 name = init_day_19
402 }
403 trigger{
404 type = custom
405 name = init_day_20
406 }
407 trigger{
408 type = custom
409 name = init_day_21
410 }
411 trigger{
412 type = custom
413 name = init_day_22
414 }
415 trigger{
416 type = custom
417 name = init_day_23
418 }
419 trigger{
420 type = custom
421 name = init_day_24
422 }
423 trigger{
424 type = custom
425 name = init_day_25
426 }
427 trigger{
428 type = custom
429 name = init_day_26
430 }
431 trigger{
432 type = custom
433 name = init_day_27
434 }
435 trigger{
436 type = custom
437 name = init_day_28
438 }
439 trigger{
440 type = custom
441 name = init_day_29
442 }
443 trigger{
444 type = custom
445 name = init_day_30
446 }
447 trigger{
448 type = custom
449 name = init_day_31
450 }
451 trigger{
452 type = custom
453 name = init_day_32
454 }
455 trigger{
456 type = custom
457 name = init_day_33
458 }
459 trigger{
460 type = custom
461 name = init_day_34
462 }
463 trigger{
464 type = custom
465 name = init_day_35
466 }
467 trigger{
468 type = custom
469 name = init_day_36
470 }
471 trigger{
472 type = custom
473 name = init_day_37
474 }
475 trigger{
476 type = custom
477 name = init_day_38
478 }
479 trigger{
480 type = custom
481 name = init_day_39
482 }
483 trigger{
484 type = custom
485 name = init_day_40
486 }
487 trigger{
488 type = custom
489 name = init_day_41
490 }
491 trigger{
492 type = custom
493 name = init_day_42
494 }
495 trigger{
496 type = custom
497 name = init_day_43
498 }
499 trigger{
500 type = custom
501 name = init_day_44
502 }
503 trigger{
504 type = custom
505 name = init_day_45
506 }
507 trigger{
508 type = custom
509 name = init_day_46
510 }
511 trigger{
512 type = custom
513 name = init_day_47
514 }
515 trigger{
516 type = custom
517 name = init_day_48
518 }
519 trigger{
520 type = custom
521 name = init_day_49
522 }
523 trigger{
524 type = custom
525 name = init_day_50
526 }
527 trigger{
528 type = custom
529 name = init_day_51
530 }
531 trigger{
532 type = custom
533 name = init_day_52
534 }
535 trigger{
536 type = custom
537 name = init_day_53
538 }
539 trigger{
540 type = custom
541 name = init_day_54
542 }
543 trigger{
544 type = custom
545 name = init_day_55
546 }
547 trigger{
548 type = custom
549 name = init_day_56
550 }
551 trigger{
552 type = custom
553 name = init_day_57
554 }
555 trigger{
556 type = custom
557 name = init_day_58
558 }
559 trigger{
560 type = custom
561 name = init_day_59
562 }
563
564 link{
565 trigger = init
566 action = buy_calf cow_random 1
567 action = log_db BUY_CALF_N=1
568 action = trigger_later init_day_01 1
569 }
570 link{
571 trigger = init_day_01
572 action = buy_calf cow_random 0
573 action = log_db BUY_CALF_N=0
574 action = trigger_later init_day_02 1
575 }
576 link{
577 trigger = init_day_02
578 action = buy_calf cow_random 0
579 action = log_db BUY_CALF_N=0
580 action = trigger_later init_day_03 1
581 }
582 link{
583 trigger = init_day_03
584 action = buy_calf cow_random 8
585 action = log_db BUY_CALF_N=8
586 action = trigger_later init_day_04 1
587 }
588 link{
589 trigger = init_day_04
590 action = buy_calf cow_random 8
591 action = log_db BUY_CALF_N=8
592 action = trigger_later init_day_05 1
593 }
594 link{
595 trigger = init_day_05
596 action = buy_calf cow_random 4
597 action = log_db BUY_CALF_N=4
598 action = trigger_later init_day_06 1
599 }
600 link{
601 trigger = init_day_06
602 action = buy_calf cow_random 0
603 action = log_db BUY_CALF_N=0
604 action = trigger_later init_day_07 1
605 }
606 link{
607 trigger = init_day_07
608 action = buy_calf cow_random 0
609 action = log_db BUY_CALF_N=0
610 action = trigger_later init_day_08 1
611 }
612 link{
613 trigger = init_day_08
614 action = buy_calf cow_random 0
615 action = log_db BUY_CALF_N=0
616 action = trigger_later init_day_09 1
617 }
618 link{
619 trigger = init_day_09
620 action = buy_calf cow_random 4
621 action = log_db BUY_CALF_N=4
622 action = trigger_later init_day_10 1
623 }
624 link{
625 trigger = init_day_10
626 action = buy_calf cow_random 4
627 action = log_db BUY_CALF_N=4
628 action = trigger_later init_day_11 1
629 }
630 link{
631 trigger = init_day_11
632 action = buy_calf cow_random 0
633 action = log_db BUY_CALF_N=0
634 action = trigger_later init_day_12 1
635 }
636 link{
637 trigger = init_day_12
638 action = buy_calf cow_random 0
639 action = log_db BUY_CALF_N=0
640 action = trigger_later init_day_13 1
641 }
642 link{
643 trigger = init_day_13
644 action = buy_calf cow_random 4
645 action = log_db BUY_CALF_N=4
646 action = trigger_later init_day_14 1
647 }
648 link{
649 trigger = init_day_14
650 action = buy_calf cow_random 0
651 action = log_db BUY_CALF_N=0
652 action = trigger_later init_day_15 1
653 }
654 link{
655 trigger = init_day_15
656 action = buy_calf cow_random 0
657 action = log_db BUY_CALF_N=0
658 action = trigger_later init_day_16 1
659 }
660 link{
661 trigger = init_day_16
662 action = buy_calf cow_random 4
663 action = log_db BUY_CALF_N=4
664 action = trigger_later init_day_17 1
665 }
666 link{
667 trigger = init_day_17
668 action = buy_calf cow_random 0
669 action = log_db BUY_CALF_N=0
670 action = trigger_later init_day_18 1
671 }
672 link{
673 trigger = init_day_18
674 action = buy_calf cow_random 0
675 action = log_db BUY_CALF_N=0
676 action = trigger_later init_day_19 1
677 }
678 link{
679 trigger = init_day_19
680 action = buy_calf cow_random 0
681 action = log_db BUY_CALF_N=0
682 action = trigger_later init_day_20 1
683 }
684 link{
685 trigger = init_day_20
686 action = buy_calf cow_random 0
687 action = log_db BUY_CALF_N=0
688 action = trigger_later init_day_21 1
689 }
690 link{
691 trigger = init_day_21
692 action = buy_calf cow_random 0
693 action = log_db BUY_CALF_N=0
694 action = trigger_later init_day_22 1
695 }
696 link{
697 trigger = init_day_22
698 action = buy_calf cow_random 0
699 action = log_db BUY_CALF_N=0
700 action = trigger_later init_day_23 1
701 }
702 link{
703 trigger = init_day_23
704 action = buy_calf cow_random 0
705 action = log_db BUY_CALF_N=0
706 action = trigger_later init_day_24 1
707 }
708 link{
709 trigger = init_day_24
710 action = buy_calf cow_random 0
711 action = log_db BUY_CALF_N=0
712 action = trigger_later init_day_25 1
713 }
714 link{
715 trigger = init_day_25
716 action = buy_calf cow_random 4
717 action = log_db BUY_CALF_N=4
718 action = trigger_later init_day_26 1
719 }
720 link{
721 trigger = init_day_26
722 action = buy_calf cow_random 0
723 action = log_db BUY_CALF_N=0
724 action = trigger_later init_day_27 1
725 }
726 link{
727 trigger = init_day_27
728 action = buy_calf cow_random 12
729 action = log_db BUY_CALF_N=12
730 action = trigger_later init_day_28 1
731 }
732 link{
733 trigger = init_day_28
734 action = buy_calf cow_random 0
735 action = log_db BUY_CALF_N=0
736 action = trigger_later init_day_29 1
737 }
738 link{
739 trigger = init_day_29
740 action = buy_calf cow_random 0
741 action = log_db BUY_CALF_N=0
742 action = trigger_later init_day_30 1
743 }
744 link{
745 trigger = init_day_30
746 action = buy_calf cow_random 0
747 action = log_db BUY_CALF_N=0
748 action = trigger_later init_day_31 1
749 }
750 link{
751 trigger = init_day_31
752 action = buy_calf cow_random 0
753 action = log_db BUY_CALF_N=0
754 action = trigger_later init_day_32 1
755 }
756 link{
757 trigger = init_day_32
758 action = buy_calf cow_random 0
759 action = log_db BUY_CALF_N=0
760 action = trigger_later init_day_33 1
761 }
762 link{
763 trigger = init_day_33
764 action = buy_calf cow_random 0
765 action = log_db BUY_CALF_N=0
766 action = trigger_later init_day_34 1
767 }
768 link{
769 trigger = init_day_34
770 action = buy_calf cow_random 4
771 action = log_db BUY_CALF_N=4
772 action = trigger_later init_day_35 1
773 }
774 link{
775 trigger = init_day_35
776 action = buy_calf cow_random 4
777 action = log_db BUY_CALF_N=4
778 action = trigger_later init_day_36 1
779 }
780 link{
781 trigger = init_day_36
782 action = buy_calf cow_random 0
783 action = log_db BUY_CALF_N=0
784 action = trigger_later init_day_37 1
785 }
786 link{
787 trigger = init_day_37
788 action = buy_calf cow_random 0
789 action = log_db BUY_CALF_N=0
790 action = trigger_later init_day_38 1
791 }
792 link{
793 trigger = init_day_38
794 action = buy_calf cow_random 0
795 action = log_db BUY_CALF_N=0
796 action = trigger_later init_day_39 1
797 }
798 link{
799 trigger = init_day_39
800 action = buy_calf cow_random 4
801 action = log_db BUY_CALF_N=4
802 action = trigger_later init_day_40 1
803 }
804 link{
805 trigger = init_day_40
806 action = buy_calf cow_random 0
807 action = log_db BUY_CALF_N=0
808 action = trigger_later init_day_41 1
809 }
810 link{
811 trigger = init_day_41
812 action = buy_calf cow_random 0
813 action = log_db BUY_CALF_N=0
814 action = trigger_later init_day_42 1
815 }
816 link{
817 trigger = init_day_42
818 action = buy_calf cow_random 0
819 action = log_db BUY_CALF_N=0
820 action = trigger_later init_day_43 1
821 }
822 link{
823 trigger = init_day_43
824 action = buy_calf cow_random 4
825 action = log_db BUY_CALF_N=4
826 action = trigger_later init_day_44 1
827 }
828 link{
829 trigger = init_day_44
830 action = buy_calf cow_random 4
831 action = log_db BUY_CALF_N=4
832 action = trigger_later init_day_45 1
833 }
834 link{
835 trigger = init_day_45
836 action = buy_calf cow_random 4
837 action = log_db BUY_CALF_N=4
838 action = trigger_later init_day_46 1
839 }
840 link{
841 trigger = init_day_46
842 action = buy_calf cow_random 0
843 action = log_db BUY_CALF_N=0
844 action = trigger_later init_day_47 1
845 }
846 link{
847 trigger = init_day_47
848 action = buy_calf cow_random 0
849 action = log_db BUY_CALF_N=0
850 action = trigger_later init_day_48 1
851 }
852 link{
853 trigger = init_day_48
854 action = buy_calf cow_random 4
855 action = log_db BUY_CALF_N=4
856 action = trigger_later init_day_49 1
857 }
858 link{
859 trigger = init_day_49
860 action = buy_calf cow_random 4
861 action = log_db BUY_CALF_N=4
862 action = trigger_later init_day_50 1
863 }
864 link{
865 trigger = init_day_50
866 action = buy_calf cow_random 4
867 action = log_db BUY_CALF_N=4
868 action = trigger_later init_day_51 1
869 }
870 link{
871 trigger = init_day_51
872 action = buy_calf cow_random 8
873 action = log_db BUY_CALF_N=8
874 action = trigger_later init_day_52 1
875 }
876 link{
877 trigger = init_day_52
878 action = buy_calf cow_random 4
879 action = log_db BUY_CALF_N=4
880 action = trigger_later init_day_53 1
881 }
882 link{
883 trigger = init_day_53
884 action = buy_calf cow_random 0
885 action = log_db BUY_CALF_N=0
886 action = trigger_later init_day_54 1
887 }
888 link{
889 trigger = init_day_54
890 action = buy_calf cow_random 0
891 action = log_db BUY_CALF_N=0
892 action = trigger_later init_day_55 1
893 }
894 link{
895 trigger = init_day_55
896 action = buy_calf cow_random 0
897 action = log_db BUY_CALF_N=0
898 action = trigger_later init_day_56 1
899 }
900 link{
901 trigger = init_day_56
902 action = buy_calf cow_random 0
903 action = log_db BUY_CALF_N=0
904 action = trigger_later init_day_57 1
905 }
906 link{
907 trigger = init_day_57
908 action = buy_calf cow_random 0
909 action = log_db BUY_CALF_N=0
910 action = trigger_later init_day_58 1
911 }
912 link{
913 trigger = init_day_58
914 action = buy_calf cow_random 0
915 action = log_db BUY_CALF_N=0
916 action = trigger_later init_day_59 1
917 }
918 link{
919 trigger = init_day_59
920 action = buy_calf cow_random 25
921 action = log_db BUY_CALF_N=25
922 }
923
924 #################################################################################################################
925 #====== Management of herd #
926 #################################################################################################################
927
928 #_______Predefined states : herd, heifers & mature ______________________________________________________________
929 #
930 # herd : Every animal that enters the herd is added to this state. Male calves are never added.
931 # heifers : Newborn female calves enter the herd as heifers, and are moved to not_heifers at 1st calving.
932 # mature : Cows enter mature state when non-labile body mass W > 0.5 WM (GSP for mature format).
933
934
935 #################################################################################################################
936 #====== Remove cows @ end of simulation #
937 #################################################################################################################
938
939 trigger{
940 type = chron
941 name = tr_end_simu
942 scheme = 1985-12-31 23:59:58
943 }
944
945 link{
946 trigger = tr_end_simu
947 action = log_db action_remove_herd
948 action = remove_herd
949 }
950
951 action{
952 type = broadcast_now
953 name = remove_herd
954 trigger = tr_remove_herd
955 }
956
957 trigger{
958 type = custom
959 name = tr_remove_herd
960 }
961
962 link{
963 trigger = tr_remove_herd
964 action = log_db delete_cow
965 action = delete_cow
966 }
967
968 #################################################################################################################
969 #====== Rearing #
970 #################################################################################################################
971
972 #_______CALF: heifers of age < 100 days
973
974 state{
975 state = CALF
976 }
977
978 link{
979 trigger = enter heifers
980 condition = age < 100
981 # action = log_db heifers_to_CALF
982 action = state_move heifers CALF
983 }
984
985 link{
986 trigger = calving
987 condition = state_size CALF > 333
988 action = log_db REMOVE_CALF_to_limit_size
989 action = delete_calf
990 }
991
992 #_______HEIFER: heifers of age >= 100 days
993
994 state{
995 state = HEIFER
996 }
997
998 link{
999 trigger = enter heifers
1000 condition = age >= 100
1001 # action = log_db heifers_to_HEIFER
1002 action = state_move heifers HEIFER
1003 }
1004
1005 link{
1006 trigger = every_day
1007 condition = age >= 100
1008 condition = is_in CALF
1009 # action = log_db CALF_to_HEIFER_@WEANING
1010 action = state_move CALF HEIFER
1011 }
1012
1013
1014 #################################################################################################################
1015 #====== Reproduction #
1016 #################################################################################################################
1017
1018 #_______CYCLING: non-pregnant heifers at 1st ovulation or postabortive/postpartum recycling cows _____________
1019
1020 state{
1021 state = CYCLING
1022 }
1023
1024 link{
1025 trigger = ovulation
1026 condition = is_in HEIFER
1027 # action = log_db HEIFER_to_CYCLING_@PUBERTY
1028 action = log_db 00_PUBERTY
1029 action = state_move HEIFER CYCLING
1030 }
1031
1032 link{
1033 trigger = ovulation
1034 action = log_db 00_OVULATION
1035 }
1036
1037 #_______BREEDING: cycling heifers and cows during breeding season ______________________________________________
1038
1039 state{
1040 state = BREEDING
1041 }
1042
1043 #During breeding season, not TO_CULL and CYCLING cows are moved to BREEDING
1044 link{
1045 trigger = every_day
1046 condition = breeding_season
1047 condition = not is_in TO_CULL
1048 condition = is_in CYCLING
1049 condition = is_in mature
1050 # action = log_db CYCLING_to_BREEDING
1051 action = state_move CYCLING BREEDING
1052 }
1053
1054 link{
1055 trigger = enter BREEDING
1056 # action = log_db Start_estrous_detection
1057 action = estrous_start estrous_detection_default
1058 }
1059
1060 link{
1061 trigger = every_day
1062 condition = not breeding_season
1063 condition = is_in BREEDING
1064 # action = log_db BREEDING_to_CYCLING
1065 action = state_move BREEDING CYCLING
1066 }
1067
1068 link{
1069 trigger = quit BREEDING
1070 # action = log_db Stop_estrous_detection
1071 action = estrous_stop
1072 }
1073
1074
1075 #_______PREGNANT: at conception _________________________________________________________________________________
1076
1077 state{
1078 state = PREGNANT
1079 }
1080
1081 link{
1082 trigger = conception
1083 action = log_db 02_CONCEPTION
1084 action = state_move BREEDING PREGNANT
1085 }
1086
1087 #_______POST-ABORTIVE: triggered at abortion ____________________________________________________________________
1088
1089 state{
1090 state = POST-ABORTIVE
1091 }
1092
1093 link{
1094 trigger = abortion
1095 condition = days_after_conception <= 17
1096 action = log_db 03_EARLY_EMBRYO_DEATH
1097 action = state_move PREGNANT CYCLING
1098 }
1099
1100 link{
1101 trigger = abortion
1102 condition = days_after_conception > 17
1103 condition = days_after_conception <= 64
1104 action = log_db 04_LATE_EMBRYO_DEATH
1105 action = state_move PREGNANT CYCLING
1106 }
1107
1108 trigger{
1109 type = custom
1110 name = post_abortive_recycling
1111 }
1112
1113 #Abortions after ] 64 - 210 days] days in pregnancy are managed with a voluntary period of 40 days
1114 link{
1115 trigger = abortion
1116 condition = days_after_conception > 64
1117 condition = days_after_conception <= 210
1118 action = log_db 05_FETAL_DEATH
1119 action = state_move PREGNANT POST-ABORTIVE
1120 action = trigger_later post_abortive_recycling 40
1121 }
1122
1123 link{
1124 trigger = post_abortive_recycling
1125 # action = log_db POST-ABORTIVE_to_CYCLING
1126 action = state_move POST-ABORTIVE CYCLING
1127 }
1128
1129 #Abortions after 210 days in pregnancy are managed by culling
1130 link{
1131 trigger = abortion
1132 condition = days_after_conception > 210
1133 action = log_db 05_FETAL_DEATH
1134 action = log_db TO_CULL_from_PREGNANT_after_late_fetal_death
1135 action = state_move PREGNANT TO_CULL
1136 }
1137
1138
1139 #_______POSTPARTAL: triggered at parturition ____________________________________________________________________
1140
1141 state{
1142 state = POSTPARTAL
1143 }
1144
1145 trigger{
1146 type = custom
1147 name = postpartal_recycling
1148 }
1149
1150 link{
1151 trigger = parturition
1152 action = log_db 06_PARTURITION
1153 # action = log_db PREGNANT_to_POSTPARTAL
1154 action = state_move PREGNANT POSTPARTAL
1155 action = trigger_later postpartal_recycling 40
1156 action = log_db start_milking
1157 action = start_milking
1158 }
1159
1160 link{
1161 trigger = postpartal_recycling
1162 # action = log_db POSTPARTAL_to_CYCLING
1163 action = state_move POSTPARTAL CYCLING
1164 }
1165
1166 #################################################################################################################
1167 #====== Drying-off #
1168 #################################################################################################################
1169
1170 #_______EXTENDED_LACTATION: CYCLING and is_milking after 305 days after calving
1171
1172 state{
1173 state = EXTENDED_LACTATION
1174 }
1175
1176 link{
1177 trigger = every_day
1178 condition = is_milking
1179 condition = not is_in PREGNANT
1180 condition = not is_in EXTENDED_LACTATION
1181 condition = days_after_calving >= 305
1182 # action = log_db Extended lactation
1183 action = state_add EXTENDED_LACTATION
1184 }
1185
1186 #stop 300 days_after_calving if milk_yield <= 5 kg/d and not in EXTENDED_LACTATION
1187 link{
1188 trigger = every_day
1189 condition = is_milking
1190 condition = not is_in EXTENDED_LACTATION
1191 condition = days_after_calving >= 300
1192 condition = milk_yield <= 5
1193 action = log_db stop_milking
1194 action = stop_milking
1195 }
1196
1197 #stop 300 days_after_calving if milk_yield <= 5 kg/d and in EXTENDED_LACTATION
1198 link{
1199 trigger = every_day
1200 condition = is_milking
1201 condition = is_in EXTENDED_LACTATION
1202 condition = days_after_calving >= 300
1203 condition = milk_yield <= 5
1204 action = log_db stop_milking_extended
1205 action = stop_milking
1206 }
1207
1208 #stop 300 days_after_calving and 219 days_in_pregnancy
1209 link{
1210 trigger = every_day
1211 condition = is_milking
1212 condition = is_pregnant
1213 condition = days_after_calving >= 300
1214 condition = days_in_pregnancy >= 219
1215 action = log_db stop_milking_pregnant
1216 action = stop_milking
1217 }
1218
1219 link{
1220 trigger = stop_milking
1221 trigger = enter PREGNANT
1222 condition = is_in EXTENDED_LACTATION
1223 action = state_delete EXTENDED_LACTATION
1224 }
1225
1226 #################################################################################################################
1227 #====== Culling #
1228 #################################################################################################################
1229
1230 #_______TO_CULL: ____________________________________________________________________
1231
1232 state{
1233 state = TO_CULL
1234 }
1235
1236 #______culling not pregnant nulliparous at age > 800 days
1237 link{
1238 trigger = every_day
1239 condition = is_in CYCLING
1240 condition = not is_in PREGNANT
1241 condition = parity = 0
1242 condition = age > 800
1243 action = log_db TO_CULL_from_CYCLING_because_too_old_heifer
1244 action = state_move CYCLING TO_CULL
1245 }
1246
1247
1248 #______culling not pregnant 320 days_after_calving
1249 link{
1250 trigger = every_day
1251 condition = days_after_calving > 320
1252 condition = is_in CYCLING
1253 action = log_db TO_CULL_from_CYCLING_because_too_late_after_calving
1254 action = state_move CYCLING TO_CULL
1255 }
1256
1257 #______culling not pregnant after 7 insemination
1258 link{
1259 trigger = every_day
1260 condition = is_in BREEDING
1261 condition = not is_in ALREADY_INSEMINATED
1262 condition = parity > 0
1263 condition = num_insemination_lactation >= 7
1264 action = log_db TO_CULL_from_BREEDING_max_nb_ins
1265 action = state_move BREEDING TO_CULL
1266 }
1267
1268 link{
1269 trigger = enter PREGNANT
1270 condition = is_in TO_CULL
1271 action = state_move TO_CULL PREGNANT
1272 }
1273
1274
1275 #______culling oldest cow
1276
1277 link{
1278 trigger = culling_day
1279 condition = state_size TO_CULL = 999999
1280 condition = state_size PREGNANT > 666
1281 #individual conditions, like not is_milking cannot be mixed wirh herd level triggers
1282 action = log_db Seek_for_oldest_to_cull
1283 action = cull_oldest
1284 }
1285
1286 trigger{
1287 type = custom
1288 name = tr_cull_oldest
1289 }
1290
1291 action{
1292 type = broadcast_now
1293 name = cull_oldest
1294 condition = not is_pregnant
1295 condition = not is_milking
1296 condition = not is_in HEIFER
1297 condition = not is_in CALF
1298 sortby = age
1299 reverse = yes
1300 limit = 1
1301 trigger = tr_cull_oldest
1302 }
1303
1304 link{
1305 trigger = tr_cull_oldest
1306 action = log_db remove_oldest
1307 action = delete_cow
1308 }
1309
1310
1311 #______remove cows TO_CULL once a month on day 15th
1312
1313 trigger{
1314 type = custom
1315 name = tr_remove_cows_to_cull
1316 }
1317
1318 link{
1319 trigger = tr_remove_cows_to_cull
1320 condition = is_in TO_CULL
1321 condition = not is_milking
1322 condition = not is_pregnant
1323 action = log_db Remove
1324 action = delete_cow
1325 }
1326
1327 trigger{
1328 type = chron
1329 name = culling_day
1330 scheme = *-*-15 14:00:00
1331 }
1332
1333 action{
1334 type = broadcast_now
1335 name = broadcast_TO_CULL
1336 condition = is_in TO_CULL
1337 trigger = tr_remove_cows_to_cull
1338 }
1339
1340 link{
1341 trigger = culling_day
1342 action = broadcast_TO_CULL
1343 }
1344
1345
1346 #################################################################################################################
1347 #====== Feeding #
1348 #################################################################################################################
1349 #______optimal feeding for 999
1350
1351 state{
1352 state = CONTROL
1353 }
1354
1355 link{
1356 trigger = enter herd
1357 condition = state_size herd <= 999 #nb_control 0 - 999
1358 action = change_food optimal
1359 action = state_add CONTROL #Cows are fed on optimal diet as a control
1360 }
1361
1362 #______Default feeding rules
1363
1364 #################### > at birth: on calf diet
1365 link{
1366 trigger = enter CALF
1367 condition = not is_in CONTROL
1368 action = change_food calf_diet
1369 }
1370
1371 #################### > at weaning: on heifer diet
1372 link{
1373 trigger = enter HEIFER
1374 condition = not is_in CONTROL
1375 action = change_food heifer_diet
1376 }
1377
1378 #################### > at parturition: on lactation diet
1379 link{
1380 trigger = parturition
1381 condition = not is_in CONTROL
1382 action = change_food lactation_diet
1383 }
1384
1385
1386 #################### > at drying-off: on drycow_diet
1387 link{
1388 trigger = stop_milking
1389 condition = not is_in CONTROL
1390 action = change_food drycow_diet
1391 }
1392
1393 #################### > OUTDOOR: on pasture diet
1394 trigger{
1395 type = chron
1396 name = outdoor
1397 scheme = *-04-01 00:00:00
1398 }
1399
1400 link{
1401 trigger = outdoor
1402 action = broadcast_outdoor
1403 }
1404
1405 action{
1406 type = broadcast_now
1407 name = broadcast_outdoor
1408 trigger = outdoor_feeding
1409 }
1410
1411 trigger{
1412 type = custom
1413 name = outdoor_feeding
1414 }
1415
1416 link{
1417 trigger = outdoor_feeding
1418 condition = not is_in CALF
1419 condition = not is_in CONTROL
1420 action = change_food pasture_diet
1421 }
1422
1423
1424 #################### > INDOOR: back to diet according to state
1425 trigger{
1426 type = chron
1427 name = indoor
1428 scheme = *-10-01 00:00:00
1429 }
1430
1431 link{
1432 trigger = indoor
1433 action = broadcast_indoor
1434 }
1435
1436 action{
1437 type = broadcast_now
1438 name = broadcast_indoor
1439 trigger = indoor_feeding
1440 }
1441
1442 trigger{
1443 type = custom
1444 name = indoor_feeding
1445 }
1446
1447 link{
1448 trigger = indoor_feeding
1449 condition = is_in HEIFER
1450 condition = not is_in CONTROL
1451 action = change_food heifer_diet
1452 }
1453
1454 link{
1455 trigger = indoor_feeding
1456 condition = is_in CYCLING
1457 condition = not is_in CONTROL
1458 action = change_food heifer_diet
1459 }
1460
1461 link{
1462 trigger = indoor_feeding
1463 condition = is_in BREEDING
1464 condition = not is_milking
1465 condition = not is_in CONTROL
1466 action = change_food heifer_diet
1467 }
1468
1469 link{
1470 trigger = indoor_feeding
1471 condition = not is_in BREEDING
1472 condition = not is_milking
1473 condition = not is_in CONTROL
1474 action = change_food drycow_diet
1475 }
1476
1477 link{
1478 trigger = indoor_feeding
1479 condition = is_milking
1480 condition = not is_in CONTROL
1481 action = change_food lactation_diet
1482 }
1483
1484
1485
1486
1487 #################################################################################################################
1488 #====== Generic stuff #
1489 #################################################################################################################
1490
1491 trigger{
1492 type = chron
1493 name = every_day_herd
1494 scheme = *-*-* 12:00:00
1495 }
1496
1497 trigger{
1498 type = custom
1499 name = every_day
1500 }
1501
1502 link{
1503 trigger = every_day_herd
1504 action = broadcast_now every_day
1505 }
1506
1507 trigger{
1508 type = custom
1509 name = first_day_sub
1510 }
1511
1512 trigger{
1513 type = custom
1514 name = first_day
1515 }
1516
1517 link{
1518 trigger = init
1519 action = trigger_later first_day_sub 0.001
1520 }
1521 link{
1522 trigger = first_day_sub
1523 action = broadcast_now first_day
1524 }
1525
1526 #################################################################################################################
1527 #====== Log #
1528 #################################################################################################################
1529
1530 log{
1531
1532 #farmer level
1533 insemination = yes
1534 change_food = yes
1535
1536 #herd level
1537 conception = yes
1538 parturition = yes
1539 death = yes
1540 estrous_observed = yes
1541 estrous_missed = yes
1542 estrous_environment= yes
1543 insemination_result= yes
1544 mature = yes
1545 ovulation = yes
1546 new_cow = yes
1547 delete_cow = yes
1548 abortion = yes
1549
1550 #cow level
1551 animal_performance = no
1552 }
1553
1554 #################################################################################################################
1555 #====== Log states #
1556 #################################################################################################################
1557
1558 action{
1559 type = genericlog_herd
1560
1561 name = log_states
1562 log_type = file
1563 file_path = states.txt
1564 sep_col = \t
1565 file_line_flush=no
1566
1567 #sqlite_path = states.sqlite
1568 #sqlite_table = states
1569
1570
1571 #--- from cow and simulator ---
1572 column{
1573 value = time
1574 name = time
1575 sqlite_type = numeric
1576 }
1577
1578 column{
1579 value = state.CONTROL
1580 name = CONTROL
1581 sqlite_type = numeric
1582 }
1583
1584 column{
1585 value = state.CALF
1586 name = CALF
1587 sqlite_type = numeric
1588 }
1589
1590 column{
1591 value = state.HEIFER
1592 name = HEIFER
1593 sqlite_type = numeric
1594 }
1595
1596 column{
1597 value = state.CYCLING
1598 name = CYCLING
1599 sqlite_type = numeric
1600 }
1601
1602 column{
1603 value = state.BREEDING
1604 name = BREEDING
1605 sqlite_type = numeric
1606 }
1607
1608 column{
1609 value = state.PREGNANT
1610 name = PREGNANT
1611 sqlite_type = numeric
1612 }
1613
1614 column{
1615 value = state.POST-ABORTIVE
1616 name = POST-ABORTIVE
1617 sqlite_type = numeric
1618 }
1619
1620 column{
1621 value = state.POSTPARTAL
1622 name = POSTPARTAL
1623 sqlite_type = numeric
1624 }
1625
1626 column{
1627 value = state.EXTENDED_LACTATION
1628 name = EXTENDED_LACTATION
1629 sqlite_type = numeric
1630 }
1631
1632 column{
1633 value = state.TO_CULL
1634 name = TO_CULL
1635 sqlite_type = numeric
1636 }
1637
1638
1639 # column{
1640 # value = state.not.mature
1641 # name = not_mature
1642 # sqlite_type = numeric
1643 # }
1644
1645 }
1646
1647 link{
1648 trigger = every_day_herd
1649 action = log_states
1650 }
1651
1652
1653
1654 ###s######## Default diets
1655
1656 feed{
1657 name = calf_diet
1658 type = mix
1659
1660 feed = CPL.MLK
1661 proportion = 1.00
1662 }
1663
1664 feed{
1665 name = heifer_diet
1666 type = mix
1667
1668 feed = FO.STR
1669 proportion = 0.02
1670 feed = FO.HAP
1671 proportion = 0.60
1672 feed = FO.GSI
1673 proportion = 0.32
1674 feed = CO.CER
1675 proportion = 0.05
1676 feed = CPL.CMV
1677 proportion = 0.01
1678 }
1679
1680 feed{
1681 name = lactation_diet
1682 type = mix
1683
1684 feed = FO.STR
1685 proportion = 0.01
1686 feed = FO.HAP
1687 proportion = 0.03
1688 feed = FO.GSI
1689 proportion = 0.04
1690 feed = FO.CSI
1691 proportion = 0.70
1692 feed = CO.CER
1693 proportion = 0.05
1694 feed = CO.OSC
1695 proportion = 0.13
1696 feed = CO.ROO
1697 proportion = 0.03
1698 feed = CPL.CMV
1699 proportion = 0.01
1700 }
1701
1702 feed{
1703 name = drycow_diet
1704 type = mix
1705
1706 feed = FO.STR
1707 proportion = 0.02
1708 feed = FO.HAP
1709 proportion = 0.68
1710 feed = FO.CSI
1711 proportion = 0.08
1712 feed = CO.CER
1713 proportion = 0.05
1714 feed = CO.OSC
1715 proportion = 0.13
1716 feed = CO.ROO
1717 proportion = 0.03
1718 feed = CPL.CMV
1719 proportion = 0.01
1720 }
1721
1722 feed{
1723 name = pasture_diet
1724 type = mix
1725
1726 feed = FO.FGX
1727 proportion = 0.778
1728 feed = CO.CER
1729 proportion = 0.050
1730 feed = CO.OSC
1731 proportion = 0.130
1732 feed = CO.TUB
1733 proportion = 0.002
1734 feed = CO.ROO
1735 proportion = 0.030
1736 feed = CPL.CMV
1737 proportion = 0.010
1738 }
1739
1740
1741
1742
1743
1744 ########################################################
1745 # #
1746 #List of available feed (derived from INRA tables) #
1747 # #
1748 ########################################################
1749
1750 ########### FORAGES ####################################
1751 # FO.STR Straw
1752 # FO.STN Straw treated with ammonia
1753 # FO.MSH Maize stover & husks
1754 # FO.HAL Legume hay
1755 # FO.HAG Gramineae hay
1756 # FO.HAP Permanent grassland hay
1757 # FO.DHA Dehydrated alfalfa
1758 # FO.DHF Dehydrated forage
1759 # FO.FGC Fresh cereal grass
1760 # FO.FGO Fresh oleaginous grass
1761 # FO.FGG Fresh gramineae grass
1762 # FO.FGX Fresh mixed grass (meadow)
1763 # FO.FGL Fresh legume grass
1764 # FO.GSI50 Grass silage > 50% DM
1765 # FO.GSI Grass silage
1766 # FO.CSI Corn silage
1767 # FO.FPF Faba & pea forage
1768 # FO.VEG Vegetable fodder
1769
1770 ########### CONCENTRATES ###############################
1771 # CO.CER Cereal seed & by-products
1772 # CO.OSC5 Oilseed cake <5% oil
1773 # CO.OSC Oilseed cake
1774 # CO.TUB Starchy tubers
1775 # CO.ROO Vegetable roots
1776 # CO.FPB Faba & pea bean
1777 # CO.LUP Lupin
1778 # CO.SDO Oilseed
1779
1780 ########### COMPLEMENTS ################################
1781 # CPL.CMV Compl. Minerals & Vitamins
1782 # CPL.AMA Amino acids
1783 # CPL.URE Urea
1784 # CPL.MOL Molasses
1785 # CPL.PLP Beet pulp
1786 # CPL.MLK Milk
1787 # CPL.OIL Oil
1788
1789
1790 feed{ # Straw
1791 # Type of feed: FORAGE
1792 # Maximum incorporation in diet: 80 %FM
1793 # Representative INRA feed: FP0090 Oat straw
1794 name = FO.STR
1795 type = ingredient
1796 feed_eD = 5.9512 # MJ_ME/kg_DM
1797 feed_DMC = 0.8825 # kg_DM/kg_FM
1798 feed_OM = 0.9100 # kg/kg_DM
1799 feed_OMd = 0.4500 # %
1800 feed_CP = 0.0360 # kg/kg_DM
1801 feed_CPd = 0.0296 # %
1802 feed_NDF = 0.7910 # kg/kg_DM
1803 feed_ST = 0.0000 # kg/kg_DM
1804 feed_STd = 0.0000 # %
1805 feed_EE = 0.0150 # kg/kg_DM
1806 }
1807 feed{ # Straw treated with ammonia
1808 # Type of feed: FORAGE
1809 # Maximum incorporation in diet: 80 %FM
1810 # Representative INRA feed: FP0080 Barley straw, NH3-treated 5%DM
1811 name = FO.STN
1812 type = ingredient
1813 feed_eD = 7.6484 # MJ_ME/kg_DM
1814 feed_DMC = 0.8867 # kg_DM/kg_FM
1815 feed_OM = 0.8970 # kg/kg_DM
1816 feed_OMd = 0.5567 # %
1817 feed_CP = 0.1000 # kg/kg_DM
1818 feed_CPd = 0.3933 # %
1819 feed_NDF = 0.7603 # kg/kg_DM
1820 feed_ST = 0.0000 # kg/kg_DM
1821 feed_STd = 0.0000 # %
1822 feed_EE = 0.0150 # kg/kg_DM
1823 }
1824 feed{ # Maize stover & husks
1825 # Type of feed: FORAGE
1826 # Maximum incorporation in diet: 80 %FM
1827 # Representative INRA feed: FP0180 Maize stover, ensiled
1828 name = FO.MSH
1829 type = ingredient
1830 feed_eD = 8.5847 # MJ_ME/kg_DM
1831 feed_DMC = 0.5022 # kg_DM/kg_FM
1832 feed_OM = 0.9332 # kg/kg_DM
1833 feed_OMd = 0.6220 # %
1834 feed_CP = 0.0888 # kg/kg_DM
1835 feed_CPd = 0.3432 # %
1836 feed_NDF = 0.6580 # kg/kg_DM
1837 feed_ST = 0.0000 # kg/kg_DM
1838 feed_STd = 0.0000 # %
1839 feed_EE = 0.0150 # kg/kg_DM
1840 }
1841 feed{ # Legume hay
1842 # Type of feed: FORAGE
1843 # Maximum incorporation in diet: 100 %FM
1844 # Representative INRA feed: FF3370 Lucerne hay
1845 name = FO.HAL
1846 type = ingredient
1847 feed_eD = 8.4626 # MJ_ME/kg_DM
1848 feed_DMC = 0.8500 # kg_DM/kg_FM
1849 feed_OM = 0.8956 # kg/kg_DM
1850 feed_OMd = 0.5987 # %
1851 feed_CP = 0.1791 # kg/kg_DM
1852 feed_CPd = 0.6818 # %
1853 feed_NDF = 0.5326 # kg/kg_DM
1854 feed_ST = 0.0000 # kg/kg_DM
1855 feed_STd = 0.0000 # %
1856 feed_EE = 0.0259 # kg/kg_DM
1857 }
1858 feed{ # Gramineae hay
1859 # Type of feed: FORAGE
1860 # Maximum incorporation in diet: 100 %FM
1861 # Representative INRA feed: FF1190 Italian ryegrass hay
1862 name = FO.HAG
1863 type = ingredient
1864 feed_eD = 8.8553 # MJ_ME/kg_DM
1865 feed_DMC = 0.8500 # kg_DM/kg_FM
1866 feed_OM = 0.9011 # kg/kg_DM
1867 feed_OMd = 0.6294 # %
1868 feed_CP = 0.1169 # kg/kg_DM
1869 feed_CPd = 0.5447 # %
1870 feed_NDF = 0.6421 # kg/kg_DM
1871 feed_ST = 0.0000 # kg/kg_DM
1872 feed_STd = 0.0000 # %
1873 feed_EE = 0.0300 # kg/kg_DM
1874 }
1875 feed{ # Permanent grassland hay
1876 # Type of feed: FORAGE
1877 # Maximum incorporation in diet: 100 %FM
1878 # Representative INRA feed: FF0750 Mountain permanent grassland hay
1879 name = FO.HAP
1880 type = ingredient
1881 feed_eD = 9.0294 # MJ_ME/kg_DM
1882 feed_DMC = 0.8500 # kg_DM/kg_FM
1883 feed_OM = 0.9133 # kg/kg_DM
1884 feed_OMd = 0.6196 # %
1885 feed_CP = 0.1270 # kg/kg_DM
1886 feed_CPd = 0.5679 # %
1887 feed_NDF = 0.6090 # kg/kg_DM
1888 feed_ST = 0.0000 # kg/kg_DM
1889 feed_STd = 0.0000 # %
1890 feed_EE = 0.0223 # kg/kg_DM
1891 }
1892 feed{ # Dehydrated alfalfa
1893 # Type of feed: FORAGE
1894 # Maximum incorporation in diet: 60 %FM
1895 # Representative INRA feed: CD0040 Dehydrated alfalfa
1896 name = FO.DHA
1897 type = ingredient
1898 feed_eD = 9.2187 # MJ_ME/kg_DM
1899 feed_DMC = 0.9070 # kg_DM/kg_FM
1900 feed_OM = 0.8752 # kg/kg_DM
1901 feed_OMd = 0.6317 # %
1902 feed_CP = 0.2002 # kg/kg_DM
1903 feed_CPd = 0.7017 # %
1904 feed_NDF = 0.4375 # kg/kg_DM
1905 feed_ST = 0.0297 # kg/kg_DM
1906 feed_STd = 0.8200 # %
1907 feed_EE = 0.0292 # kg/kg_DM
1908 }
1909 feed{ # Dehydrated forage
1910 # Type of feed: FORAGE
1911 # Maximum incorporation in diet: 60 %FM
1912 # Representative INRA feed: CD0120 Dehydrated Italian ryegrass
1913 name = FO.DHF
1914 type = ingredient
1915 feed_eD = 9.9954 # MJ_ME/kg_DM
1916 feed_DMC = 0.9080 # kg_DM/kg_FM
1917 feed_OM = 0.8898 # kg/kg_DM
1918 feed_OMd = 0.7010 # %
1919 feed_CP = 0.1436 # kg/kg_DM
1920 feed_CPd = 0.6182 # %
1921 feed_NDF = 0.5450 # kg/kg_DM
1922 feed_ST = 0.0024 # kg/kg_DM
1923 feed_STd = 0.1640 # %
1924 feed_EE = 0.0268 # kg/kg_DM
1925 }
1926 feed{ # Fresh cereal grass
1927 # Type of feed: FORAGE
1928 # Maximum incorporation in diet: 100 %FM
1929 # Representative INRA feed: FV2020 Fresh whole crop sorghum
1930 name = FO.FGC
1931 type = ingredient
1932 feed_eD = 9.4748 # MJ_ME/kg_DM
1933 feed_DMC = 0.2504 # kg_DM/kg_FM
1934 feed_OM = 0.9148 # kg/kg_DM
1935 feed_OMd = 0.6585 # %
1936 feed_CP = 0.1044 # kg/kg_DM
1937 feed_CPd = 0.6330 # %
1938 feed_NDF = 0.5710 # kg/kg_DM
1939 feed_ST = 0.0983 # kg/kg_DM
1940 feed_STd = 0.8652 # %
1941 feed_EE = 0.0304 # kg/kg_DM
1942 }
1943 feed{ # Fresh oleaginous grass
1944 # Type of feed: FORAGE
1945 # Maximum incorporation in diet: 100 %FM
1946 # Representative INRA feed: FV2830 Fresh silphium
1947 name = FO.FGO
1948 type = ingredient
1949 feed_eD = 9.8974 # MJ_ME/kg_DM
1950 feed_DMC = 0.1170 # kg_DM/kg_FM
1951 feed_OM = 0.8494 # kg/kg_DM
1952 feed_OMd = 0.7323 # %
1953 feed_CP = 0.1535 # kg/kg_DM
1954 feed_CPd = 0.7491 # %
1955 feed_NDF = 0.4212 # kg/kg_DM
1956 feed_ST = 0.0000 # kg/kg_DM
1957 feed_STd = 0.0000 # %
1958 feed_EE = 0.0248 # kg/kg_DM
1959 }
1960 feed{ # Fresh gramineae grass
1961 # Type of feed: FORAGE
1962 # Maximum incorporation in diet: 100 %FM
1963 # Representative INRA feed: FV0490 Fresh italian ryegrass
1964 name = FO.FGG
1965 type = ingredient
1966 feed_eD = 10.2129 # MJ_ME/kg_DM
1967 feed_DMC = 0.1885 # kg_DM/kg_FM
1968 feed_OM = 0.8893 # kg/kg_DM
1969 feed_OMd = 0.7150 # %
1970 feed_CP = 0.1452 # kg/kg_DM
1971 feed_CPd = 0.6756 # %
1972 feed_NDF = 0.5690 # kg/kg_DM
1973 feed_ST = 0.0000 # kg/kg_DM
1974 feed_STd = 0.0000 # %
1975 feed_EE = 0.0367 # kg/kg_DM
1976 }
1977 feed{ # Fresh mixed grass (meadow)
1978 # Type of feed: FORAGE
1979 # Maximum incorporation in diet: 100 %FM
1980 # Representative INRA feed: FV0120 Fresh lowland grassland
1981 name = FO.FGX
1982 type = ingredient
1983 feed_eD = 10.2424 # MJ_ME/kg_DM
1984 feed_DMC = 0.1946 # kg_DM/kg_FM
1985 feed_OM = 0.9057 # kg/kg_DM
1986 feed_OMd = 0.6896 # %
1987 feed_CP = 0.1444 # kg/kg_DM
1988 feed_CPd = 0.6595 # %
1989 feed_NDF = 0.5498 # kg/kg_DM
1990 feed_ST = 0.0000 # kg/kg_DM
1991 feed_STd = 0.0000 # %
1992 feed_EE = 0.0265 # kg/kg_DM
1993 }
1994 feed{ # Fresh legume grass
1995 # Type of feed: FORAGE
1996 # Maximum incorporation in diet: 100 %FM
1997 # Representative INRA feed: FV2370 Fresh red clover
1998 name = FO.FGL
1999 type = ingredient
2000 feed_eD = 10.3243 # MJ_ME/kg_DM
2001 feed_DMC = 0.1749 # kg_DM/kg_FM
2002 feed_OM = 0.8844 # kg/kg_DM
2003 feed_OMd = 0.7014 # %
2004 feed_CP = 0.2046 # kg/kg_DM
2005 feed_CPd = 0.7671 # %
2006 feed_NDF = 0.4603 # kg/kg_DM
2007 feed_ST = 0.0000 # kg/kg_DM
2008 feed_STd = 0.0000 # %
2009 feed_EE = 0.0287 # kg/kg_DM
2010 }
2011 feed{ # Grass silage > 50% DM
2012 # Type of feed: FORAGE
2013 # Maximum incorporation in diet: 100 %FM
2014 # Representative INRA feed: FE2790 Wilted perennial ryegrass silage
2015 name = FO.GSI50
2016 type = ingredient
2017 feed_eD = 9.3078 # MJ_ME/kg_DM
2018 feed_DMC = 0.5502 # kg_DM/kg_FM
2019 feed_OM = 0.9056 # kg/kg_DM
2020 feed_OMd = 0.6545 # %
2021 feed_CP = 0.1351 # kg/kg_DM
2022 feed_CPd = 0.6395 # %
2023 feed_NDF = 0.5744 # kg/kg_DM
2024 feed_ST = 0.0000 # kg/kg_DM
2025 feed_STd = 0.0000 # %
2026 feed_EE = 0.0337 # kg/kg_DM
2027 }
2028 feed{ # Grass silage
2029 # Type of feed: FORAGE
2030 # Maximum incorporation in diet: 100 %FM
2031 # Representative INRA feed: FE2220 Perennial ryegrass silage
2032 name = FO.GSI
2033 type = ingredient
2034 feed_eD = 10.3090 # MJ_ME/kg_DM
2035 feed_DMC = 0.2234 # kg_DM/kg_FM
2036 feed_OM = 0.8950 # kg/kg_DM
2037 feed_OMd = 0.6952 # %
2038 feed_CP = 0.1406 # kg/kg_DM
2039 feed_CPd = 0.6469 # %
2040 feed_NDF = 0.5425 # kg/kg_DM
2041 feed_ST = 0.0000 # kg/kg_DM
2042 feed_STd = 0.0000 # %
2043 feed_EE = 0.0374 # kg/kg_DM
2044 }
2045 feed{ # Corn silage
2046 # Type of feed: FORAGE
2047 # Maximum incorporation in diet: 100 %FM
2048 # Representative INRA feed: FE4710 Fine chop 30% DM corn silage
2049 name = FO.CSI
2050 type = ingredient
2051 feed_eD = 10.6995 # MJ_ME/kg_DM
2052 feed_DMC = 0.3109 # kg_DM/kg_FM
2053 feed_OM = 0.9484 # kg/kg_DM
2054 feed_OMd = 0.7061 # %
2055 feed_CP = 0.0848 # kg/kg_DM
2056 feed_CPd = 0.5300 # %
2057 feed_NDF = 0.4415 # kg/kg_DM
2058 feed_ST = 0.2754 # kg/kg_DM
2059 feed_STd = 0.7660 # %
2060 feed_EE = 0.0310 # kg/kg_DM
2061 }
2062 feed{ # Faba & pea forage
2063 # Type of feed: FORAGE
2064 # Maximum incorporation in diet: 100 %FM
2065 # Representative INRA feed: FV2700 Fresh faba bean forage
2066 name = FO.FPF
2067 type = ingredient
2068 feed_eD = 10.8203 # MJ_ME/kg_DM
2069 feed_DMC = 0.2546 # kg_DM/kg_FM
2070 feed_OM = 0.9115 # kg/kg_DM
2071 feed_OMd = 0.7188 # %
2072 feed_CP = 0.1578 # kg/kg_DM
2073 feed_CPd = 0.7156 # %
2074 feed_NDF = 0.4160 # kg/kg_DM
2075 feed_ST = 0.0913 # kg/kg_DM
2076 feed_STd = 0.7650 # %
2077 feed_EE = 0.0288 # kg/kg_DM
2078 }
2079 feed{ # Vegetable fodder
2080 # Type of feed: FORAGE
2081 # Maximum incorporation in diet: 100 %FM
2082 # Representative INRA feed: FV2840 Fresh kale
2083 name = FO.VEG
2084 type = ingredient
2085 feed_eD = 12.0901 # MJ_ME/kg_DM
2086 feed_DMC = 0.1348 # kg_DM/kg_FM
2087 feed_OM = 0.8674 # kg/kg_DM
2088 feed_OMd = 0.8260 # %
2089 feed_CP = 0.1684 # kg/kg_DM
2090 feed_CPd = 0.7794 # %
2091 feed_NDF = 0.3382 # kg/kg_DM
2092 feed_ST = 0.0000 # kg/kg_DM
2093 feed_STd = 0.0000 # %
2094 feed_EE = 0.0080 # kg/kg_DM
2095 }
2096 feed{ # Cereal seed & by-products
2097 # Type of feed: CONCENTRATE
2098 # Maximum incorporation in diet: 60 %FM
2099 # Representative INRA feed: CS0160 Wheat middlings, starch 30-40%
2100 name = CO.CER
2101 type = ingredient
2102 feed_eD = 12.3262 # MJ_ME/kg_DM
2103 feed_DMC = 0.8835 # kg_DM/kg_FM
2104 feed_OM = 0.9541 # kg/kg_DM
2105 feed_OMd = 0.7712 # %
2106 feed_CP = 0.1642 # kg/kg_DM
2107 feed_CPd = 0.6629 # %
2108 feed_NDF = 0.2909 # kg/kg_DM
2109 feed_ST = 0.4008 # kg/kg_DM
2110 feed_STd = 0.8041 # %
2111 feed_EE = 0.0584 # kg/kg_DM
2112 }
2113 feed{ # Oilseed cake <5% oil
2114 # Type of feed: CONCENTRATE
2115 # Maximum incorporation in diet: 60 %FM
2116 # Representative INRA feed: CX0050 Cottonseed meal, cr. fibre 15-20%
2117 name = CO.OSC5
2118 type = ingredient
2119 feed_eD = 12.0555 # MJ_ME/kg_DM
2120 feed_DMC = 0.8907 # kg_DM/kg_FM
2121 feed_OM = 0.9309 # kg/kg_DM
2122 feed_OMd = 0.7747 # %
2123 feed_CP = 0.4309 # kg/kg_DM
2124 feed_CPd = 0.7740 # %
2125 feed_NDF = 0.2931 # kg/kg_DM
2126 feed_ST = 0.0527 # kg/kg_DM
2127 feed_STd = 0.8200 # %
2128 feed_EE = 0.0236 # kg/kg_DM
2129 }
2130 feed{ # Oilseed cake
2131 # Type of feed: CONCENTRATE
2132 # Maximum incorporation in diet: 60 %FM
2133 # Representative INRA feed: CX0310 Sunflower meal, oil 5-20%
2134 name = CO.OSC
2135 type = ingredient
2136 feed_eD = 12.6524 # MJ_ME/kg_DM
2137 feed_DMC = 0.9207 # kg_DM/kg_FM
2138 feed_OM = 0.9368 # kg/kg_DM
2139 feed_OMd = 0.7350 # %
2140 feed_CP = 0.3499 # kg/kg_DM
2141 feed_CPd = 0.7570 # %
2142 feed_NDF = 0.3477 # kg/kg_DM
2143 feed_ST = 0.0444 # kg/kg_DM
2144 feed_STd = 0.8200 # %
2145 feed_EE = 0.1015 # kg/kg_DM
2146 }
2147 feed{ # Starchy tubers
2148 # Type of feed: CONCENTRATE
2149 # Maximum incorporation in diet: 60 %FM
2150 # Representative INRA feed: CP0030 Cassava
2151 name = CO.TUB
2152 type = ingredient
2153 feed_eD = 11.6622 # MJ_ME/kg_DM
2154 feed_DMC = 0.6480 # kg_DM/kg_FM
2155 feed_OM = 0.9510 # kg/kg_DM
2156 feed_OMd = 0.8367 # %
2157 feed_CP = 0.0750 # kg/kg_DM
2158 feed_CPd = 0.4888 # %
2159 feed_NDF = 0.1192 # kg/kg_DM
2160 feed_ST = 0.6447 # kg/kg_DM
2161 feed_STd = 0.7900 # %
2162 feed_EE = 0.0062 # kg/kg_DM
2163 }
2164 feed{ # Vegetable roots
2165 # Type of feed: CONCENTRATE
2166 # Maximum incorporation in diet: 60 %FM
2167 # Representative INRA feed: FR0040 Carrot
2168 name = CO.ROO
2169 type = ingredient
2170 feed_eD = 12.8261 # MJ_ME/kg_DM
2171 feed_DMC = 0.1568 # kg_DM/kg_FM
2172 feed_OM = 0.9311 # kg/kg_DM
2173 feed_OMd = 0.8900 # %
2174 feed_CP = 0.0896 # kg/kg_DM
2175 feed_CPd = 0.5710 # %
2176 feed_NDF = 0.1295 # kg/kg_DM
2177 feed_ST = 0.0050 # kg/kg_DM
2178 feed_STd = 0.2000 # %
2179 feed_EE = 0.0110 # kg/kg_DM
2180 }
2181 feed{ # Faba & pea bean
2182 # Type of feed: CONCENTRATE
2183 # Maximum incorporation in diet: 60 %FM
2184 # Representative INRA feed: CN0060 Faba bean seeds
2185 name = CO.FPB
2186 type = ingredient
2187 feed_eD = 13.6219 # MJ_ME/kg_DM
2188 feed_DMC = 0.8721 # kg_DM/kg_FM
2189 feed_OM = 0.9610 # kg/kg_DM
2190 feed_OMd = 0.9057 # %
2191 feed_CP = 0.2689 # kg/kg_DM
2192 feed_CPd = 0.7843 # %
2193 feed_NDF = 0.1550 # kg/kg_DM
2194 feed_ST = 0.4601 # kg/kg_DM
2195 feed_STd = 0.7586 # %
2196 feed_EE = 0.0146 # kg/kg_DM
2197 }
2198 feed{ # Lupin
2199 # Type of feed: CONCENTRATE
2200 # Maximum incorporation in diet: 60 %FM
2201 # Representative INRA feed: CN0130 White lupin seeds
2202 name = CO.LUP
2203 type = ingredient
2204 feed_eD = 15.2995 # MJ_ME/kg_DM
2205 feed_DMC = 0.8880 # kg_DM/kg_FM
2206 feed_OM = 0.9617 # kg/kg_DM
2207 feed_OMd = 0.8800 # %
2208 feed_CP = 0.3657 # kg/kg_DM
2209 feed_CPd = 0.8000 # %
2210 feed_NDF = 0.2257 # kg/kg_DM
2211 feed_ST = 0.0700 # kg/kg_DM
2212 feed_STd = 0.8200 # %
2213 feed_EE = 0.0850 # kg/kg_DM
2214 }
2215 feed{ # Oilseed
2216 # Type of feed: CONCENTRATE
2217 # Maximum incorporation in diet: 60 %FM
2218 # Representative INRA feed: CN0110 Linseeds
2219 name = CO.SDO
2220 type = ingredient
2221 feed_eD = 17.6063 # MJ_ME/kg_DM
2222 feed_DMC = 0.9143 # kg_DM/kg_FM
2223 feed_OM = 0.9539 # kg/kg_DM
2224 feed_OMd = 0.7650 # %
2225 feed_CP = 0.2647 # kg/kg_DM
2226 feed_CPd = 0.7380 # %
2227 feed_NDF = 0.2515 # kg/kg_DM
2228 feed_ST = 0.0461 # kg/kg_DM
2229 feed_STd = 0.8200 # %
2230 feed_EE = 0.3208 # kg/kg_DM
2231 }
2232 feed{ # Compl. Minerals & Vitamins
2233 # Type of feed: COMPLEMENT
2234 # Maximum incorporation in diet: 5 %FM
2235 # Representative INRA feed: MC0010 Crushed chalk
2236 name = CPL.CMV
2237 type = ingredient
2238 feed_eD = 0.0000 # MJ_ME/kg_DM
2239 feed_DMC = 0.9500 # kg_DM/kg_FM
2240 feed_OM = 0.0000 # kg/kg_DM
2241 feed_OMd = 0.0000 # %
2242 feed_CP = 0.0000 # kg/kg_DM
2243 feed_CPd = 0.0000 # %
2244 feed_NDF = 0.0000 # kg/kg_DM
2245 feed_ST = 0.0000 # kg/kg_DM
2246 feed_STd = 0.0000 # %
2247 feed_EE = 0.0000 # kg/kg_DM
2248 }
2249 feed{ # Amino acids
2250 # Type of feed: COMPLEMENT
2251 # Maximum incorporation in diet: 5 %FM
2252 # Representative INRA feed: CAA020 L-threonin
2253 name = CPL.AMA
2254 type = ingredient
2255 feed_eD = 0.0000 # MJ_ME/kg_DM
2256 feed_DMC = 1.0000 # kg_DM/kg_FM
2257 feed_OM = 0.9960 # kg/kg_DM
2258 feed_OMd = 1.0000 # %
2259 feed_CP = 0.7450 # kg/kg_DM
2260 feed_CPd = 1.0000 # %
2261 feed_NDF = 0.0000 # kg/kg_DM
2262 feed_ST = 0.0000 # kg/kg_DM
2263 feed_STd = 0.0000 # %
2264 feed_EE = 0.0000 # kg/kg_DM
2265 }
2266 feed{ # Urea
2267 # Type of feed: COMPLEMENT
2268 # Maximum incorporation in diet: 5 %FM
2269 # Representative INRA feed: CV0020 Urea
2270 name = CPL.URE
2271 type = ingredient
2272 feed_eD = 3.3890 # MJ_ME/kg_DM
2273 feed_DMC = 0.9940 # kg_DM/kg_FM
2274 feed_OM = 1.0000 # kg/kg_DM
2275 feed_OMd = 0.9900 # %
2276 feed_CP = 2.8700 # kg/kg_DM
2277 feed_CPd = 1.0000 # %
2278 feed_NDF = 0.0000 # kg/kg_DM
2279 feed_ST = 0.0000 # kg/kg_DM
2280 feed_STd = 0.0000 # %
2281 feed_EE = 0.0000 # kg/kg_DM
2282 }
2283 feed{ # Molasses
2284 # Type of feed: COMPLEMENT
2285 # Maximum incorporation in diet: 10 %FM
2286 # Representative INRA feed: CP0170 Beet molasses
2287 name = CPL.MOL
2288 type = ingredient
2289 feed_eD = 9.7906 # MJ_ME/kg_DM
2290 feed_DMC = 0.7390 # kg_DM/kg_FM
2291 feed_OM = 0.8660 # kg/kg_DM
2292 feed_OMd = 0.8250 # %
2293 feed_CP = 0.1000 # kg/kg_DM
2294 feed_CPd = 0.5800 # %
2295 feed_NDF = 0.0015 # kg/kg_DM
2296 feed_ST = 0.0000 # kg/kg_DM
2297 feed_STd = 0.0000 # %
2298 feed_EE = 0.0070 # kg/kg_DM
2299 }
2300 feed{ # Beet pulp
2301 # Type of feed: COMPLEMENT
2302 # Maximum incorporation in diet: 10 %FM
2303 # Representative INRA feed: CP0020 Pressed beet pulp
2304 name = CPL.PLP
2305 type = ingredient
2306 feed_eD = 11.5046 # MJ_ME/kg_DM
2307 feed_DMC = 0.4503 # kg_DM/kg_FM
2308 feed_OM = 0.9243 # kg/kg_DM
2309 feed_OMd = 0.8367 # %
2310 feed_CP = 0.0913 # kg/kg_DM
2311 feed_CPd = 0.6470 # %
2312 feed_NDF = 0.4827 # kg/kg_DM
2313 feed_ST = 0.0047 # kg/kg_DM
2314 feed_STd = 0.5467 # %
2315 feed_EE = 0.0097 # kg/kg_DM
2316 }
2317 feed{ # Milk
2318 # Type of feed: COMPLEMENT
2319 # Maximum incorporation in diet: 100 %FM
2320 # Representative INRA feed: CL0020 Whole milk powder
2321 name = CPL.MLK
2322 type = ingredient
2323 feed_eD = 18.8280 # MJ_ME/kg_DM
2324 feed_DMC = 0.9600 # kg_DM/kg_FM
2325 feed_OM = 0.9350 # kg/kg_DM
2326 feed_OMd = 0.9400 # %
2327 feed_CP = 0.2540 # kg/kg_DM
2328 feed_CPd = 0.7800 # %
2329 feed_NDF = 0.0000 # kg/kg_DM
2330 feed_ST = 0.0000 # kg/kg_DM
2331 feed_STd = 0.0000 # %
2332 feed_EE = 0.2510 # kg/kg_DM
2333 }
2334 feed{ # Oil
2335 # Type of feed: COMPLEMENT
2336 # Maximum incorporation in diet: 5 %FM
2337 # Representative INRA feed: CG0050 Soybean oil
2338 name = CPL.OIL
2339 type = ingredient
2340 feed_eD = 36.6937 # MJ_ME/kg_DM
2341 feed_DMC = 0.9980 # kg_DM/kg_FM
2342 feed_OM = 0.9995 # kg/kg_DM
2343 feed_OMd = 0.8900 # %
2344 feed_CP = 0.0000 # kg/kg_DM
2345 feed_CPd = 0.0000 # %
2346 feed_NDF = 0.0000 # kg/kg_DM
2347 feed_ST = 0.0000 # kg/kg_DM
2348 feed_STd = 0.0000 # %
2349 feed_EE = 0.9992 # kg/kg_DM
2350 }
2351
2352
2353