nutofem / nuto

NuTo - yet another finite element library
https://nuto.readthedocs.io
Boost Software License 1.0
17 stars 5 forks source link

Remove/Reorganize metamodel & optimize #200

Closed TTitscher closed 6 years ago

TTitscher commented 6 years ago

We have some chunks of dead and untested code in metamodel and optimize. And we should do something about that. (Most of them seem to be helper classes to NeuralNetwork.) My proposal:

feature action
Optimize::NewtonRaphon already replaced by Math::NewtonRaphson::Solve()
Optimize::ConjugateGradient Use an external solver lib, e.g. Eigen::ConjugateGradient<>
Optimize::MisesWielandt ??
Metamodel::PolynomialLeastSquareFitting move to /math/ (and simplify a bit)
Metamodel::NeuralNetwork Use an external lib. E.g. NuTo::Fem + TensorFlow, both provide a python interface. (Well, not yet in NuTo, but soooon.)

If there are no objections, I'd like to tackle this soon, say, right after the next NuTo Meeting.

joergfunger commented 6 years ago

I understand the problems with this metamodel class, since nobody is currently using it. However, I feel like this approximation interface (metamodel) that is able to replace (based on some training/support points) a function is very useful. The application might be here very similar to the currently started PGD implementation, since there as well, we are evaluating a metamodel by interpolation on response surfaces. Similar, the evaluation in the parameter optimization problems of Isabela are somehow similar, since it should be either possible to get the values from a real FE-computation, or from a metamodel.