How is remanent magnetization/remanence handled in forward modelling?

I am looking to perform magnetic forward modelling considering both remanence and susceptibility, and I do not understand how the remanent component is specified in models.

Specifically in the following example, what exactly does line 57 represent? The comment above in line 56 describes this as a combination of induced and remanent components, but what are the units of the quantity?

Lines 53 to 57:

# We will assume a vertical inducing field
H0 = (50000.0, 90.0, 0.0)

# The magnetization is set along a different direction (induced + remanence)
M = np.array([45.0, 90.0])

Example: Magnetic inversion on a TreeMesh — SimPEG 0.20.0.post2 documentation

I understand that to consider remanence model_type must be set to “vector” as shown below


However, in the Simulation3DIntegral class (linked below), this setting results in a multiplication by source field amplitude, and I do not understand why quantities that consider a remanent component would by multiplied by the source field amplitude. This makes sense for susceptibility, but not remanence.

if self.model_type == "vector":
                cell_vals = (
                    np.r_[cell_eval_x, cell_eval_y, cell_eval_z]
                ) * self.survey.source_field.amplitude
                cell_vals = (
                    cell_eval_x * M[:, 0]
                    + cell_eval_y * M[:, 1]
                    + cell_eval_z * M[:, 2]

The above if statement begins in line 465

Simulation3DIntegral: simpeg/SimPEG/potential_fields/magnetics/ at main · simpeg/simpeg · GitHub