# Workbench

This page is part of the Workbench, one of three main sections of **Tower Grove Feed**. The other two are the Workshop and the Setup. For an overview of the Workbench go to Workbench overview.

## Contents |

## Workbench overview

The **Workbench** is where you work directly on a diet (or formula). Normally, you spend most of the time in the **Workbench** while using **Tower Grove Feed**. There are main three pages in the **Workbench**: Formula Nutrients, Formula Ingredients, and Formula Ratios. There is is also a page for each of the formula reports: Solution Report, Batch Report, and Parametrics

In Formula Nutrients, you define the requirements of the diet.

In Formula Ingredients, you indicate which ingredients are available to formulate the diet. You can also place minimum or maximum restrictions on the ingredient. You can change an ingredient's cost or the nutrient quantity it provides.

In Formula Ratios, you can observe the ratio between nutrients, ingredients, or both that results from solving the formula. You can also specify a minimum or maximum restriction on a ratio.

## Formula header fields

### Formula Name

The formula name drop down allows you to change the **Workbench** formula without having to return to the formula list in the Workshop. If you restricted the formula list in the Workshop to a single species, only formulas for that species will appear in the drop down.

The **name** is the primary way to identify objects in **Tower Grove Feed**. No two objects of the same type in the same hierarchy can have the same name, no matter what the language. The same object can have different names in different languages. The name can be changed only by the owner of the object, but any user can make the first translation of a name into another language. Objects of different types may have the same name. For example, 'salt' can be the name of both a nutrient and an ingredient. (This is only an example, and, as this is not usually a good practice, **Tower Grove Feed** has not used the name 'salt' this way at the system level.)

### Code

An arbitrary short name, abbreviation, or other ID that can be used as an alternative identifier of objects. The code can be used to group objects. By default, ingredients are sorted by code. For formulas and ingredients supplied by the system, **Tower Grove Feed** provides a systematic coding.

### Batch Weight

Batch Weight is the weight the least-cost solution targets. Typically, it is a standard size of 1000 for metric system users and 2000 for English system users. Batch Weight is required.

It also could be the size of the batch mixer (say 5000) or even an individual daily intake size for an animal (say 30).

Its interpretation is affected by Dry Matter.

Reports such as the Batch Report and the Solution Report prompt for their own batch weight, so specifying a standard batch weight here does not limit you on the reports

### UoM

The **unit of measure** indicates the type of measurement to record weights. The choice is almost always between '**pounds - lb'** and '**kilograms - kg'**. The **unit of measure** applies to the batch weight, the weights of ingredients in the formula solution, and to ingredient cost units. You could also select 'tons' or 'metric tons' but these are not typically used. Pound (lb) usually refers to an avoirdupois pound.

The **unit of measure** is specified on the Formula defaults page in the Workshop.

Currently the **unit of measure** designation is for information only. If you change the **unit of measure**, **Tower Grove Feed** does not recalculate ingredient costs or reset batch weight or costs automatically. If, for example, you change from kilograms to pounds, the most common thing to do is to set change the Formula defaults batch weight to 2000 and also set the Control level defaults cost units to 2000.

### Dry Matter

The Dry Matter field is a check box that determines whether the solution nutrients and the Batch Weight are to be considered as 100% dry matter. Solution ingredients will be shown “as is.”

If checked, solution nutrients and Batch Weight are shown as 100% dry matter.

If unchecked (default) solution Nutrients and Batch Weight are shown “as is.”

### Infeasible Solution

A common tendency for the novice is to put restrictions on everything in sight, the tighter the better, compounding the mistake with the thought that every minimum needs a maximum, and vice versa!

The maxim "Less is More" should be followed in setting up restrictions. Unnecessary restrictions not only limit the trade-offs available to the least-cost algorithm, thereby resulting in a solution that is more costly, but also can cause infeasibilites.

If you have no clues in "debugging" an infeasible solution, remove half the constraints and solve again, repeating until you have a feasible solution.

Then add back half of the constraints that you most recently discarded, repeating until you have isolated the culprit(s).

### Log

The **log** field enables you to display linear program (LP) solution statistics on the screen and in debug mode to produce a spreadsheet showing various stages of the calculation of the result.

There are three possible specifications:

**None**(default) - Do not Log LP statistics or produce a spreadsheet.

**Statistics**- Log LP statistics to the screen.

**Debug**- Log LP statistics to the screen and produce a spreadsheet showing the calculations.

You should almost always solve a formula with "Log: None" specified. The other settings are used by the software developers to isolate problems. They can also be used by an analyst to determine why the solution to a particular formulation is #Infeasible.

### Opt Den

Optimum Density specifies whether or not the solution calculations should find the optimum yield for the diet without having to produce the exact batch weight specified for the formula. If there is a least cost diet that meets the formula's requirements but with a yield lower or higher than the batch weight, then that diet will be the solution regardless of its final yield.

Optimum Density allows the solve algorithm to increase (or decrease) yield in order to find the optimum nutrient density, resulting in a lower cost than solving with the formula's batch weight. Nutrient density is an important tool in feeding animals under conditions of heat or stress.

Two fields control the use of Optimum Density: the optimum density code and the range percentage.

The Optimum Density codes are:

- "Y - Yes" to find the optimum yield
- "N - No" to use the fixed batch weight (the default)
- "W - WeightLimits" to find the optimum yield within specific limits

If you specify "W-weight limits" you should also specify a range percentage. This is the range within which the solution may vary from the specified batch weight. For example if the batch weight is 1000 and the range percentage is 10%, then the solution yield may be anywhere from 900 to 1100.

Helpful hint: The two optimum density codes use a different model for solving than the fixed batch weight model. A code of "W-weight limits" and a range percentage of zero specifies the same batch weight as "N - No", but uses the optimum density model in the solve. This can be useful for cases where the solve has difficulties with "N - No".

### Prev Cost

**Previous Cost ** is the total ingredient cost of the formula solution from the previous **solve**.

### Round

Round Code is a one character field that determines how the solution will be rounded.

Enter one of the following:

**N**(default) does NOT round the ingredients.

**Y**rounds the ingredients without regard to the batch weight.

**R**rounds the ingredients exactly to the batch weight (the largest ingredient will have any leftover amounts from rounding the other ingredients).

**U**rounds the ingredients UP without regard to the batch weight.

### Show changed items only

In the list of items, show only those that have been changed at the the current level. Do not show items that have inherited values only.

### Species

The species is the type of animal that the formula is designed for. The species of a formula can be changed only by a user at the level of the formula's owner. The ability to change the species is provided to allow you to copy a diet (formula) from one species to another,

The following Species Codes are pre-loaded:

**Beef**

**Dairy**

**Poultry**

**Swine**

### Total Cost

Total ingredient cost of the formula after clicking **solve**.

It is the cost of the yield.

### Type

Formula Type consists of two one-character fields which the user can assign freely.

For example, some users put the initial of the owner of a particular formula here so that other users do not modify it without permission from the owner.

There is one specialized use of these codes for medication interlock codes used by the 3000 series of Wisconsin Electric Manufacturing Co. batch mixers:

Type 1 2 Function U N Unmedicated - may not follow medicated feed U Y Unmedicated - may follow medicated feed M N Medicated - may not follow medicated feed M Y Medicated – may follow medicated feed

### UoM

The **unit of measure** is kg for metric system users and lb for English system users. It is specified on the Formula Defaults page in the Workshop and applies to the control level as a whole.

### Yield

The actual weight of the least-cost solution. The **solve** button creates the **yield**. It should be the same or very nearly the same as the batch weight (unless optimum density is specified). If not, the least-cost solution may be infeasible.

## Formula reports

The **Formula reports** enable you to quickly display, print, extract, or send a variety of information about a formula. The default is to display as HTML; that is, to show the report results on the screen. You can also select PDF and XLS. PDF creates a file that you can print or email to someone. XLS creates a spreadsheet, which you can open in Microsoft Excel, Open Office, or other programs so that you can make new calculations on the results of the reports.

The Solution and Batch reports require that a formula be solved at least once. The Parametrics report does not have this requirement.

### Solution report

The Solution report shows the results of solving formula.

### Batch report

The Batch report lists the ingredients in the solution in the order that they are to be mixed.

### Parametrics report

The Parametrics report helps you investigate what would happen if one or more of your formula specifications were to change.