festim-dev/FESTIM-workshop

Faulty output in task01

Opened this issue · 13 comments

Hello, I am using the FESTIM workshop on debian 11 with FESTIM 1.3.1 installed via pip and fenics via apt version : fenics/oldstable,now 1:2019.2.0.5 amd64 [installed].

The example (task01) does not raise an error, however, the "mobile_concentration.txt" output file contains one line repeated for every step. The value evolves as expected with each timestep.

Is this a known bug with my specific version? Any suggestions on how to further debug are wellcome.

Hello. It is similar but not the same, the .txt file generated by the code of task01 gives the concentration values at the lowest x value and repeats this line (2*n) -1 times. Here n is the number of vertices specified in the configuration of the simulation.

Can you provide the TXT output please

Ok so the content looks like this:

x,t=1.00e-01s,t=2.00e-01s,t=5.00e-01s,t=1.00e+00s
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16
6.999999999999999816e-09,3.745935295323514400e+16,4.862470564827332000e+16,5.637923701412466400e+16,5.702999233687084800e+16

All the rows have the same x value.

This is the expected output:

x,t=1.00e-01s,t=2.00e-01s,t=5.00e-01s,t=1.00e+00s
6.999999999999999816e-09,3.488893674270494800e+16,4.645798178830062400e+16,5.586287860482966400e+16,5.702014515046599200e+16
0.000000000000000000e+00,9.999999999999956250e+14,9.999999999999956250e+14,9.999999999999998750e+14,9.999999999999998750e+14
1.399999999999999963e-08,6.866589844313862400e+16,9.180385421290123200e+16,1.106135543397368800e+17,1.129280760092114560e+17
6.999999999999999816e-09,3.488893674270494000e+16,4.645798178830064000e+16,5.586287860482966400e+16,5.702014515046600800e+16
2.099999999999999945e-08,1.023311246504487360e+17,1.370377225071364000e+17,1.652520389328216640e+17,1.687237928826510400e+17
1.399999999999999963e-08,6.866589844313862400e+16,9.180385421290121600e+16,1.106135543397368800e+17,1.129280760092114880e+17
2.799999999999999926e-08,1.358848549007206720e+17,1.821596919021333440e+17,2.197783441119523200e+17,2.244072960771930880e+17
2.099999999999999945e-08,1.023311246504487360e+17,1.370377225071364000e+17,1.652520389328216640e+17,1.687237928826510720e+17
3.499999999999999577e-08,1.693273287107725440e+17,2.271698676257088320e+17,2.741924816046502080e+17,2.799785858992372800e+17
2.799999999999999926e-08,1.358848549007206720e+17,1.821596919021333120e+17,2.197783441119523520e+17,2.244072960771931200e+17

I haven't been able to reproduce your issue on Ubuntu and the latest fenics version. Have you modified the task in any way?

No, I pulled the git repository and made sure to that git diff gives an empty result.

How would I print the fenics version that FESTIM accesses?

print(fenics.version) I would say

Ok then it is: 2019.2.0.dev0

This is what I have when I run conda list fenics

# Name                    Version                   Build  Channel
fenics                    2019.1.0            h8783aee_48    conda-forge
fenics-dijitso            2019.1.0          pyhd8ed1ab_39    conda-forge
fenics-dolfin             2019.1.0        py311h57ea513_48    conda-forge
fenics-ffc                2019.1.0          pyhd8ed1ab_39    conda-forge
fenics-fiat               2019.1.0          pyhd8ed1ab_39    conda-forge
fenics-libdolfin          2019.1.0            h894a989_48    conda-forge
fenics-ufl                2019.1.0        py311h38be061_38    conda-forge

and

import dolfin as df
print (df.__version__)

gives 2019.1.0

@wasanti you seem to have a development version of legacy-fenics. I'm trying to conda install it to try and reproduce your issue.

Can you try and install the 2019.1.0 version?

It is getting wilder: When I installed "fenics:amd64 (1:2019.1.0.1ppa1disco1)" from the fenics repo or "fenics:amd64 (1:2019.2.0.5)" from the debian repo, the "fenix-version" command continues: to yield: "2019.2.0.dev0".

The error also persists for both installs.

This sounds like you have conflicting versions. Can you clean up everything (remove fenics completely) and reinstall the correct (non-dev) version?

When doing this, I get stuck in a dependency/version clash between fenics, dolfin and festim. I wont rule out that there is a way out but I would leave it at that since the Debian version (bullseye) I am using will soon be replaced. I'll try again when I install a newer version of Debian.
I further tested installing via conda and that runs fine.