Flow123d
DF_patch_fe_data_tables-b828b90
|
#include <stdint.h>
#include <algorithm>
#include <vector>
#include <cmath>
#include <complex>
#include <ostream>
#include <string>
#include "input/input_exception.hh"
#include "system/exceptions.hh"
#include <boost/math/special_functions/detail/round_fwd.hpp>
Go to the source code of this file.
Classes | |
class | tolerance< T > |
class | None |
class | Linear |
class | Langmuir |
class | Freundlich |
class | Isotherm |
struct | Isotherm::ConcPair |
Pair of soluted and adsorbed concentration. More... | |
class | CrossFunction< Func > |
* Copyright (C) 2015 Technical University of Liberec. All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 3 as published by the Free Software Foundation. (http://www.gnu.org/licenses/gpl-3.0.en.html)
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
Other possible transformation of coordinates:
c_l - conc. liquid c_s - conc. solid c_t = h_l * c_l + h_s * c_s = X' + Y' X = c_t Y = X' - Y' = h_l * c_l - h_s * c_s
A) make table for function c_t -> Y 1) for given c_t solve nonlinear eq. h_l * c_l + h_s * f(c_l) = c_t
2) from c_l compute Y = c_t - 2* h_l * c_l
B) calculation of new c_l, c_s from c_t using table:
1) use table to get value of Y for given c_t 2) compute: c_l = (c_t - Y) / (2 * h_l) c_s = (c_t + Y) / (2 * h_s)
The transformation currently in use transforms pair (c_l, c_s) directly to (c_t, W) in ortogonal way. Proposed transformation first scale (c_l, c_s) to (X',Y') and then transform scaled coordinates in ortogonal way.
Definition in file isotherm.hh.