**Numerical Simulation** and **Symbolic Math** only.

# Introduction

Where a question requires multiple responses from the candidate, and each response builds on a previous response, Error Carried Forward (ECF) enables candidates to receive partial marks where the specific answer is incorrect but by including the previous answer's value is mathematically correct.

- Example Question
- The Two Elements of Error Carry Forward
- Set ECF Variables in the Program Model
- Declare ECF Variables
- Assign ECF to Response Outcomes
- Partially Correct Marks

# Example Question

The following question is a simple exercise of doubling the previous value. *beta* is double the value of *alpha*. *gamma* is double the value of *beta*. And *delta* is double the value of *gamma*.

In the below example, the candidate entered the incorrect value for **beta** but their subsequent responses were mathematically correct if their error was *carried forward* as if it were correct.

# The Two Elements of Error Carry Forward

There are two elements to setting up Error Carry Forward (ECF).

- Set the ECF variable in the Program Model
- Set the variable as a valid answer in the Response Outcome.

# Set ECF Variables in the Program Model

- Open up the Program Model of the question.
- Click
**Enable error carry forward** - Declare the ECF variables
- Click
**Compile**then**Save.**

# Declare ECF Variables

Once ECF is enabled, you can declare ECF-specific variables in the **Error carry forward variable** area underneath the **Program Model**.

In the example question, there are 3 candidate response input but only 2 ECF variables. Why is that? It's because the answer for *beta* cannot carry any error forward. The correct answer will always be fixed because *alpha* is defined within the question. As the answer for *beta* is the first input, it therefore does not require an ECF equivalent.

To set ECF variables for the other two inputs, we need to create new variables with different names. Here they are declared as `gamma_ecf: beta * 2;`

and `delta_ecf: gamma * 2;`

respectively.

Because they are in the **Error carry forward variable** area, they only come into play if the candidate makes an error.

Think of it like this - the value of `gamma`

is *beta* multiplied by two, but if *beta* was incorrect then `gamma_ecf`

takes over and its value is whatever value was entered as *beta* by the candidate multiplied by two. The same logic is applied to `delta_ecf`

.

Once ECF variables have been set, they now need to be assigned in the Response Outcome.

# Assign ECF Variables to Response Outcomes

For any ECF variable to have an effect, it must be included within the Response Outcome.

- Click on the relevant Response Outcome
- Click
**+ Add ECF outcome**under**Error carry forward outcome** - Select the ECF variable
- Select how to mark an ECF response

Using the above example, what this means in practice is the expected Response Outcome is the value of `gamma`

. However if that is incorrect, it will then move to the **Error Carry Forward Outcome(s)** and see if the response was the value of `gamma_ecf`

and if so, treat it as Partially Correct (or Correct if set that way). Remember the value of `gamma_ecf`

is whatever the candidate entered into `beta`

multiplied by two.

This action needs to be repeated for each Response Outcome and its related ECF variable.

# Set Partially Correct Marks

If setting Partially Correct marks for Error Carry Forward, the value of these are set under the **Marks** menu to the right of the main authoring area.