history_before_2005
来自「FreeFem++可以生成高质量的有限元网格。可以用于流体力学」· 代码 · 共 639 行 · 第 1/2 页
TXT
639 行
beginning: november 21, 2001: version 1.08.----------------------------------------------2001/11/22: correction of operator == and != 2001/11/23 , version: 1.09: correction (with g++) template<class A> struct SameType, type of OK must be int and not bool 2001/11/24 add fonctionality in plot, bb=[[x1,y1],[x2,y2]] add loop if enter character +,-,=,c,C,r in graphic window.2001/11/28 correction bug initialization of QuadTree if less than 4 points in the quadtree files QuadTree.cpp and FQuadTree.hpp add exec("xxx..."); //to execute on system command. "xxx ... " add dumptable(cout); //to show all internal table2001/11/29: Version ans graphique + ajout d'option dans plot (cf. doc) correction ajoute renum() des maillage crees. 2001/12/10 Correct missing check in plot ex: plot(1); trap before now, genere a compile error Correct in the interpolation is full not conforme FE, do not prolonged by continuity. change add after line 479 in file lgfem.cpp if (outside && !KK.tfe->NbDfOnVertex && !KK.tfe->NbDfOnEdge) return SetAny<R>(0.0); 2001/12/12 correction in gibbs (mesh renum) reconstruct the array of triangle for each vertex (PB. of interpolation in non convexe domain) Big bug.Make version 1.14-----------------2001/12/14 correction in trunc mesh, bug if empty mesh is created, and move a little the test point in a triangle is not exactly the barycenter. 2002/01/14 correction in probem.cpp line 1309 bug when we write qft= ... , in int2d if (nargs[0]) return *GetAny<const Fem2D::QuadratureFormular*>((*nargs[1])... becomes: if (nargs[0]) return *GetAny<const Fem2D::QuadratureFormular*>((*nargs[0])...2002/01/15 in lgfem.cpp remove line 522 reffecran();//bug if not graphique some time in file MeshGeom.cpp line 108 bug if name == 0 ; add test before the cout like if(name) cout << " ... " << name << .... correct the name of the exec file (FreeFee++ -> FreeFem++) in Makefile2002/02/03 in Mesh2.cpp in preinit() add call to srand(), to get the same mesh with the same data. correct mesh tth=th; Make version 1.15-----------------2002/02/20 Add periodic boundary condition see the manual //\index{periodic}Make version 1.16----------------- Add Parallele Mpi correct bug in SegmentationFault.edp missing placing of delete[] operator put declaration in for wait =xx change the default value of wait ofstream f("foo.txt",append) open a file in append mode add NoUseOfWait=true; never wait for run test easly\index{NoUseOfWait}Make version 1.17 2002/03/20---------------------------- Make default iso value changing with zoom option. Add GMRES solver dimKrylov= , tgv= //\index{GMRES}\index{problem!dimKrylov=}\index{solve!tgv=}\index{problem!tgv=} april 2002 Make the current version without CheckPtr, and correct some bug in string allocation (forgetting +1 in some length) Improving the speed of the software add CPUTime global bool variable to print the CPU time of each instruction. correct some printing without verbosity adding some checking in array management Add option in the Makefile (gnumake)Make version 1.18 the 2002/04/08 -------------------------------- Big correction in automatic cast see bugv1.18.edp correction in interpolation of label see also bugv1.18.edp Big correction in construction of non-symetrix matrix (see BUG)Make version 1.19 2002/04/18---------------------------- Correction in Quadtree integer overflow when interpolate solution of from one big domain to a very small one. Correction in embedded function (return problem) Correction in return type of function (right value an note left value) Correction cast bool to int, so lots of bug in expression like (region==2)*5 given alway 0, invisibl before 1.18 (because bug in automatics cast)Make version 1.20 2002/04/25---------------------------- Correction of bug in interpolation on non convexe domain. correction of bug in periodic boundary condition (pb of sens(in french)) correction some compilation bug under g++ v3.0 in RNM file correction find common point buildmesh (change threshold value)Make version 1.21 2002/04/29---------------------------- Add Non linear Conjugued Gradient (CGNL) routine. correct bug in linearGC with non zero right and size.Make version 1.22 2002/05/02---------------------------- all optimisation tool from //\url{http://coool.mines.edu/} Add BFGS optimisation tools form cool //\index{BFGS} correct bug in CGNL, correct tgv=, in linear form //\index{CGNL} make algo.edp example Make version 1.23 2002/05/13---------------------------- correct bug of the symetric matrix are independ of x,y,.. add line at 285, in file problem.cpp: MeshPointStack(stack)->set(T(pi),pi,Ku); correct bug in sign of int1d in linearform, so change in exemple fluidstructure, schwarz-no-overlap, LaplaceP1, aalapacien, lapacienprecon correct some bug in -= operator with result of *. */ add some operator: -square(u) = u^2 //\index{square} -intalledges(Th)(...) to compute integrale on all edges of all triangle //\index{intalledges} for error indicator add global : -lenEdge the len of the current edge //\index{lenEdge} -hTriangle the size of the current triangle //\index{hTriangle} -area the area of the current triangle //\index{area} Make version 1.24----------------- add in BamgFreeFem.cpp after line 211 to set name Tn->name= new char[strlen("msh2bamg")+1]; strcpy(Tn->name,"msh2bamg"); add - of linearform and bilinearform see LaplaceP1bis.edp correct: July 8, 2002 Vh u1,u2,v1,v2; bug in problem(u1,u2,v1,v2,.... ) = in file: FESSpace.hpp line 193: { throwassert(dim_which_sub_fem[N-1]>=0 && dim_which_sub_fem[N-1]< nb_sub_fem); for(int i=0,n0=0,l=0,i0=0; i<k; i++,n0+=t.N,i0+=t.NbDoF) for (int j=0;j<t.pij_alpha.N();j++,l++) { pij_alpha[l].i=t.pij_alpha[j].i+i0; pij_alpha[l].p=t.pij_alpha[j].p; pij_alpha[l].j=t.pij_alpha[j].j+n0; } } add plot of list of border //\index{plot!border} add init array: real[int] a=[1,2,3,5.6,7,8,9]; //\index{array!initialisation}Make version 1.25 ----------------- 13 aout 2002 Major Bug in : FESpace.hpp ligne 199 All the non scalar problem with same kind of finite element do not work: FESpace.hpp ligne 199 for(int i=0,n0=0,l=0,i0=0; i<k; i++,n0+=t.N,i0+=t.NbDoF) for (int j=0;j<t.pij_alpha.N();j++,l++) { pij_alpha[l].i=t.pij_alpha[j].i+i0; pij_alpha[l].p=t.pij_alpha[j].p; pij_alpha[l].j=t.pij_alpha[j].j+n0; } become // Warning the componant is moving first for (int j=0,l=0;j<t.pij_alpha.N();j++) // for all sub DF for(int i=0,i0=0; i<k; i++,l++) // for componate { pij_alpha[l].i=t.pij_alpha[j].i*k+i; // DoF number pij_alpha[l].p=t.pij_alpha[j].p; // point of interpolation pij_alpha[l].j=t.pij_alpha[j].j+i*t.N; // componante of interpolation } two corrections in problem.cpp : 2 missing delete (example laplacienprecon.edp) 2 delete -> delete [] (example testFE.edp) 26 septembre 2002 add New Finite element RTortho (a conforme //\index{RTortho} FE in $H(curl)$ like RT conforme FE in $H(div)$. see exemple aaRT.epd correct the computation of dx(v) and dy(u) in [u,v] RT finite element function. compile on hpux 11 with gcc 3.2 see Makefile-hp9000s700 correct argument passing in GMRES routineMake version 1.26 le 26 septembre 2002-------------------------------------- 05 nov. 2002 Correct very small mistake in bamglib part. 19 nov 2002: add: -tanh function //\index{tanh} -qf2pT4P1 a triangular QuadratureFormular (4P1 the qf2pT QuadratureFormular) //\index{qf2pT4P1} small change une meshadapt to just compute the metrix see exemple convectapt.edp make interpolation matrix between to FEspace (not wet finish) 3/12/2002 make correction to get a not to bad linenumber in error. add add test is used of unset x,y to make a error. add checkmovemesh(Th,[x+u,y+v]) function to return the //\index{checkmovemesh} value of the area of the minimal triangle of the movemesh. see mesh.edp example. 23/12/2002: add eigen value solver //\index{eigenvalue} see eigen README_ARPACK to compile see examples++-eigen to test.Make version 1.28 2/1/2003 ---------------------09/1/2003: add sub array option in array: //\index{array!sub} real[int] tab(100); tab(:) = array from 0 to 99=tab.n-1 tab(2:10) sub array from 2 to 10 tab(2:10:2) sub array from 2 to 10 by step 2 tab(2:10:2)[0] = 5 ; => modificaton of tab[2] = 5; tab(2:10:2)[1] = 6 ; => modificaton of tab[2+2] = 6; 16/01/2003add macro generation like cpp preprosseur://\index{macro}this is usefull to make automatic diffexemple: real cc=2;macro f(u) (cc*(exp(u)-1)) //macro df(f) (cc*(exp(f))) //real u=1;cout << (cc*(exp(u)-1)) << endl;cout << f(u) << endl;cout << df(f(u)) << endl;see macro.edp for more detail: 22/01/2003 in file lex.cpp add .c_str() for compilation problem on g++ 2.95 15/04/2003add new finite element: P1b P1 + Bubble //\index{P1b} P1dc P1 discontinious //\index{P1dc} P2dc P2 discontinious //\index{P2dc}correct bug periodic BC with vectorial FESpace, add the code.Make version 1.31----------------- 23/04/2003 small correction to compile with g++ 2.95.2 in eigen value tools26/04/2003 add function triangulate(filename) to build the //\index{triangulate} Delaunay Triangulation of a set of points in R^2. to build a function form a set of : x y f(x,y) see exemple mesh.edp make version 1.32 (29/04/2003)----------------- -add optimization in automatique interpolation CPU of all tutoral exemples 172 s( mon my Mac) new version 1.33 (with graphics) CPU of all tutoral exemples 167 s( mon my Mac) new version 1.33 (without graphics) CPU of all tutoral exemples 169 s( mon my Mac) new version 1.32 (without graphics) bofbof. -correct bug in macro generation, a macro existe just in a block {..}. // lex.cpp if ( ret =='{') { /*cout << " listMacroDef->push_back"<< endl; */ listMacroDef->push_back( MapMacroDef() );} else if (ret == '}') {/*cout << " listMacroDef->pop_back"<< endl; */ listMacroDef->pop_back( );} -small correction to be compatible with g++ version 3.3Make version 1.33 01/07/2003----------------------------- - small correction in parallelempi.cpp add a ; line 159 - comment line 519 in file AFunction.hpp (pb with g++ 3.3.1) // operator Expression() const {return f;} (double definition)see line 527 operator const E_F0 * () const {return f;} - correct Makefile for mpi version
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?