fractions inside exponential don't work with -O
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
FFC |
Fix Released
|
Medium
|
Kristian B. Ølgaard |
Bug Description
More woes with optimisation and fractions. Inside a .ufl file, the code
M = M0*exp(1.0/(T1))
where T1 is a function works fine and
M = M0*exp(1.0/(T1-T0))
where T1 and T0 are functions seems to work without optimisation. With optimisation, compiling against DOLFIN leads to the error message
ThermoChemical
ThermoChemicalM
ThermoChemicalM
The following works fine:
Expression.ufl:
element = FiniteElement("CG", triangle, 1)
M0 = Function(element)
f0 = Function(element)
f1 = Function(element)
#M = M0*exp(1.0/f0)*dx
M = M0*exp(1.0/(f0 - f1))*dx
$ ffc -O Expression.ufl
main.cpp:
#include <ufc.h>
#include "Expression.h"
int main()
{
return 0;
}
$ c++ -I/home/
Changed in ffc: | |
assignee: | nobody → oelgaard (k-b-oelgaard) |
importance: | Undecided → Medium |
description: | updated |
Changed in ffc: | |
status: | New → Fix Committed |
status: | Fix Committed → Fix Released |
Changed in ffc: | |
status: | Fix Released → Fix Committed |
Changed in ffc: | |
status: | Fix Committed → Fix Released |