libcellml
libcellml copied to clipboard
Improve human readability in C generation
Include Aliases to improve the readability of generated C code.
Currently generated code looks like:
rate[1] = f(variable[1], variable[2])
rate[2] = g(variable[1], variable[2])
It would be nice to have a flag for human readability that changes the generated code to something like this:
name_of_variable_1 = variable[1]
name_of_variable_2 = variable[2]
d_name_of_variable_1 = f(name_of_variable_1, name_of_variable_2)
d_name_of_variable_2 = g(name_of_variable_1, name_of_variable_2)
rate[1] = d_name_of_variable_1
rate[2] = d_name_of_variable_2
Or something similar?
This would make it much easier to collaborate with other groups, i.e. if I want to generate an ANS model to collaborate with a group working on CVS modelling I need to send them the C++ code of the ANS model. If it's not readable it makes things tough. It would also make debugging errors within steps of the solver much easier.
Definitely possible and relatively easy to do. We could make it an option to Generator::implementationCode().