I am attempting to rewrite a module I had written to make it more user-friendly for my community. I had originally written the model with a very complex SIF file and all sorts of MATC code. I'm in the process of rewriting the solver so that it is both less cumbersome and conforms to current Elmer programing standards. In addition, I'm trying to take a lot of the MATC code and put it directly into the solver.

An issue I am running into is how to set Dirichlet bcs in the solver. The standard method I've been able to find is to use

Code: Select all

`CALL DefaultDirchletBCs()`

Code: Select all

```
Boundary 1
Varname = Real
End
```

A straight forward way to implement this would be to write a UserFunction and call it in the SIF:

Code: Select all

```
Constant
MeasurableQuantity= Real
End
Boundary 1
Varname = Real; Procedure "UserFunction" "UserFunction"
End
```

Code: Select all

```
Solver 1
....
Use MeasurableQuantity = Logical
...
End
Boundary 1
MeasurableQuantity = Real
End
```

Note, I still want the Solver module to output the solution in terms of Varname, but I want to prescribe the Dirichlet BCs in terms of MeasurableQuantity.