Consider the following code


    f[n_, p_] := n^p
    g[n_, p_] := n*p
        
    DirichletConvolve[f[n, p], g[n, p], n, 4]

First, we define two functions ```f``` and ```g```. Then we compute their Dirichlet convolution. 

The third argument in the Dirichlet convolution tells us that ```n``` is the function argument for which we want to do the convolution.
```p``` on the other hand is a parameter that happens to exist in the functions but is not related to the convolution.
Changing the last line to

    DirichletConvolve[f[n, p], g[n, p], p, 4]

means that we are using ```p``` as the variable for the convolution, whereas ```n``` now is some parameter.

Finally, the ```4``` says that we want to evaluate the resulting function at 4.
If you want to evaluate this function at the general position ```m``` you use

    DirichletConvolve[f[n, p], g[n, p], n, m]


## Mathematical Way

Let me write this in a mathematical way:
We have two functions

$$
f \colon \mathbb{N} \times \mathbb{N} \longrightarrow \mathbb{N} \\
(n,p) \longmapsto n^p
$$

and

$$
g \colon \mathbb{N} \times \mathbb{N} \longrightarrow \mathbb{N} \\
(n,p) \longmapsto n\cdot p
$$

Now `DirichletConvolve[f[n, p], g[n, p], n, m]` evaluates

    (f*g)(m, p) = \sum_{d \mid m} f(d, p) g \left(\frac{m}{d}, p\right)


whereas ```DirichletConvolve[f[n, p], g[n, p], p, m]``` evaluates


    (f*g)(m, p) = \sum_{d \mid m} f(p, d) g \left(p, \frac{m}{d}\right)

> For some reason the software claims that there is a syntax error and I cannot save the post if I render the formulas. :-(

## Example from the Documentation
If the functions `f` and `g` do not have any parameters, this looks like:

    f[n_] := n (* or any other function depending only on n *)
    g[n_] := n
    
    DirichletConvolve[f[n], g[n], n, m]

This example is equivalent to the one from the documentation

    DirichletConvolve[n, n, n, m]

We convolve the identity map with itself and evaluate it at `m`.