Author: Francois Mazen <francois@mzf.fr>
Description: Remove spelling errors in binary.
Forwarded: https://github.com/FreeFem/FreeFem-sources/pull/188


--- a/src/fflib/problem.cpp
+++ b/src/fflib/problem.cpp
@@ -145,7 +145,7 @@
             }
         }
         if (err)
-        ExecError("Incompatibility beetwen  boundary condition  and FE space");
+        ExecError("Incompatibility between  boundary condition  and FE space");
     }
 
     void Check(const  Ftest * fl,int N)
@@ -165,7 +165,7 @@
             }
         }
         if (err)
-        ExecError("Incompatibility beetwen linear varf  and FE space");
+        ExecError("Incompatibility between linear varf  and FE space");
     }
   template<class R>
   inline void  CheckErrorOptimisation(const R& ccc,const R& cc,const char * cmm)
@@ -175,7 +175,7 @@
                  || (cc !=cc) ||  (ccc !=ccc) ) {// test for NaN
                 cerr << cc << " != " << ccc <<  " diff "<< cc-ccc <<" => ";
                 cerr << cmm << endl;
-                 cerr << " remark if you add  (..  ,   optimize=2) then  you remove this check (be carefull); "<< endl;
+                 cerr << " remark if you add  (..  ,   optimize=2) then  you remove this check (be careful); "<< endl;
                 ExecError("In Optimized version "); }}
    }
     inline void  CheckErrorOptimisation(const Complex ccc,const Complex& cc,const char * cmm)
@@ -186,7 +186,7 @@
             {
                 cerr << cc << " != " << ccc <<  " diff "<< cc-ccc <<" => ";
                 cerr << cmm << endl;
-                cerr << " remark if you add  (..  ,   optimize=2) then  you remove this check (be carefull); " <<endl;
+                cerr << " remark if you add  (..  ,   optimize=2) then  you remove this check (be careful); " <<endl;
 
                 ExecError("In Optimized version "); }}
     }
@@ -219,7 +219,7 @@
         pair_stack_double * bs=static_cast<pair_stack_double *>(bstack);
         Stack stack= bs->first;
         double binside = *bs->second; // truc FH pour fluide de grad2 (decentrage bizard)
-        ffassert(mat.onFace); //   Finite Volume or discontinous Galerkine
+        ffassert(mat.onFace); //   Finite Volume or discontinuous Galerkine
         ffassert(ie>=0 && ie < 4); //  int on Face
         MeshPoint mp= *MeshPointStack(stack);
         R ** copt = Stack_Ptr<R*>(stack,ElemMatPtrOffset);
@@ -449,7 +449,7 @@
         pair_stack_double * bs=static_cast<pair_stack_double *>(bstack);
         Stack stack= bs->first;
         double binside = *bs->second; // truc FH pour fluide de grad2 (decentrage bizard)
-        assert(mat.onFace); //   Finite Volume or discontinous Galerkine
+        assert(mat.onFace); //   Finite Volume or discontinuous Galerkine
         assert(ie>=0 && ie < 3); //  int on edge
         MeshPoint mp= *MeshPointStack(stack);
         R ** copt = Stack_Ptr<R*>(stack,ElemMatPtrOffset);
@@ -635,7 +635,7 @@
         if ( pThdi != &Th || &Uh.Th !=&Th || &Vh.Th !=&Th) {
             cout << " --Use matrix formulation ---" << endl;
             ExecError("No way to compute bilinear form with integrale of on mesh \n"
-                      "  test  or unkown function  defined on an other mesh! sorry to hard.   ");
+                      "  test  or unknown function  defined on another mesh! sorry to hard.   ");
         }
         SHOWVERB(cout << " FormBilinear " << endl);
         double CPU0 = CPUtime();
@@ -662,8 +662,8 @@
         QuadratureFormular FIT(FITo,3);
         // GQuadratureFormular<R3>  FIV(FIVo,3);
 
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -741,8 +741,8 @@
         }
         if(VF) {
             if(&Uh != &Vh || sym)
-            cout << ("To Day in bilinear form with discontinous Galerkin (2d):   \n"
-                     "  test or unkown function must be  defined on the same FEspace, \n"
+            cout << ("To Day in bilinear form with discontinuous Galerkin (2d):   \n"
+                     "  test or unknown function must be  defined on the same FEspace, \n"
                      "  and the matrix is not symmetric. \n"
                      " To do other case in a future (F. Hecht) dec. 2003 ");
             if(&Uh == &Vh)
@@ -913,7 +913,7 @@
             }
         }
         else
-        InternalError(" kind of CDomainOfIntegration unkown");
+        InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
         delete &mate;
@@ -947,7 +947,7 @@
         if ( pThdi != &Th || &Uh.Th !=&Th || &Vh.Th !=&Th) {
             cout << " Use matrix formulation .... " << endl;
             ExecError("No way to compute bilinear form with integrale of on mesh \n"
-                      "  test  or unkown function  defined on an other mesh! sorry to hard.   ");
+                      "  test  or unknown function  defined on another mesh! sorry to hard.   ");
         }
         SHOWVERB(cout << " FormBilinear " << endl);
         MatriceElementaireSymetrique<R,FESpace> *mates =0;
@@ -968,8 +968,8 @@
         QuadratureFormular FIT(FITo,3);
         GQuadratureFormular<R3>  FIV(FIVo,3);
 
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int2d==kind) cout << "  -- boundary int border ( nQP: "<< FIT.n << ") ,"  ;
@@ -1047,8 +1047,8 @@
         }
         if(VF) {
             if(&Uh != &Vh || sym)
-            cout <<  ("To Day in bilinear form with discontinous Galerkin (3d):   \n"
-                      "  test or unkown function must be  defined on the same FEspace, \n"
+            cout <<  ("To Day in bilinear form with discontinuous Galerkin (3d):   \n"
+                      "  test or unknown function must be  defined on the same FEspace, \n"
                       "  and the matrix is not symmetric. \n"
                       " To do other case in a future (F. Hecht) dec. 2014 ");
             if(&Uh == &Vh)
@@ -1210,8 +1210,8 @@
         }
         else
         {
-            cerr << " kind of CDomainOfIntegration unkown ?? " << di.kind << endl;
-            InternalError(" kind of CDomainOfIntegration unkown");
+            cerr << " kind of CDomainOfIntegration unknown ?? " << di.kind << endl;
+            InternalError(" kind of CDomainOfIntegration unknown");
         }
 
         if (where_in_stack) delete [] where_in_stack;
@@ -1285,8 +1285,8 @@
         QuadratureFormular FIT(FITo,3);
         // GQuadratureFormular<R3>  FIV(FIVo,3);
 
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -1364,8 +1364,8 @@
         }
         if(VF) {
             if(&Uh != &Vh || sym)
-            cout << ("To Day in bilinear form with discontinous Galerkin (2d):   \n"
-                     "  test or unkown function must be  defined on the same FEspace, \n"
+            cout << ("To Day in bilinear form with discontinuous Galerkin (2d):   \n"
+                     "  test or unknown function must be  defined on the same FEspace, \n"
                      "  and the matrix is not symmetric. \n"
                      " To do other case in a future (F. Hecht) dec. 2003 ");
             if(&Uh == &Vh)
@@ -1537,7 +1537,7 @@
             }
         }
         else
-        InternalError(" kind of CDomainOfIntegration unkown");
+        InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
         delete &mate;
@@ -1577,8 +1577,8 @@
         const GQuadratureFormular<R1> & FITo = di.FIE(stack);
         GQuadratureFormular<R1>  FIT(FITo,3);
 
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
         if( di.withmap()) { ExecError(" no map  in the case (2)??");}
         if(di.islevelset() && ( (CDomainOfIntegration::int1d!=kind) && (CDomainOfIntegration::int2d!=kind) )  )
@@ -1642,8 +1642,8 @@
         }
         if(VF) {
             if(&Uh != &Vh || sym)
-                cout << ("To Day in bilinear form with discontinous Galerkin (2d):   \n"
-                         "  test or unkown function must be  defined on the same FEspace, \n"
+                cout << ("To Day in bilinear form with discontinuous Galerkin (2d):   \n"
+                         "  test or unknown function must be  defined on the same FEspace, \n"
                          "  and the matrix is not symmetric. \n"
                          " To do other case in a future (F. Hecht) dec. 2003 ");
             if(&Uh == &Vh)
@@ -1690,7 +1690,7 @@
         
         
         else
-            InternalError(" kind of CDomainOfIntegration unkown");
+            InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
         delete &mate;
@@ -3593,8 +3593,8 @@
         const QuadratureFormular1d & FIE = di.FIE(stack);
         const QuadratureFormular & FITo = di.FIT(stack);
         QuadratureFormular FIT(FITo,3);
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -3838,7 +3838,7 @@
 
             }}
         else
-        InternalError(" kind of CDomainOfIntegration unkown");
+        InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
     }
@@ -3893,8 +3893,8 @@
 
         //    const QuadratureFormular & FIT = di.FIT(stack);
         //    const Fem2D::GQuadratureFormular<R3> & FIV = di.FIV(stack);
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int2d==kind) cout << "  -- boundary int border ( nQP: "<< FIT.n << ") ,"  ;
@@ -4060,7 +4060,7 @@
 
             } }
         else
-        InternalError(" kind of CDomainOfIntegration unkown");
+        InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
         mp=mps;// restore x,y,z
@@ -4108,8 +4108,8 @@
         const QuadratureFormular1d & FIE = di.FIE(stack);
         const QuadratureFormular & FITo = di.FIT(stack);
         QuadratureFormular FIT(FITo,3);
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
         if (verbosity>3)
         {
             if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -4354,7 +4354,7 @@
 
         }
         else
-            InternalError(" kind of CDomainOfIntegration unkown");
+            InternalError(" kind of CDomainOfIntegration unknown");
 
         if (where_in_stack) delete [] where_in_stack;
             }
@@ -4398,8 +4398,8 @@
         const GQuadratureFormular<R1> & FITo = di.FIE(stack);
         GQuadratureFormular<R1> FIT(FITo,3);
 
-        bool VF=b->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+        bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
         // if(di.islevelset()) InternalError("Sorry no levelset integration type on this case (1)");
         if(di.islevelset() && (CDomainOfIntegration::int1d!=kind))
@@ -4469,7 +4469,7 @@
               }
         }
         else { cout << " di.kind " << di.kind << endl;
-            InternalError(" kind of CDomainOfIntegration unkown");
+            InternalError(" kind of CDomainOfIntegration unknown");
         }
         if (where_in_stack) delete [] where_in_stack;
     }
@@ -4510,8 +4510,8 @@
        const GQuadratureFormular<R1> & FITo = di.FIE(stack);
        GQuadratureFormular<R1> FIT(FITo,3);
 
-       bool VF=b->VF();  // finite Volume or discontinous Galerkin
-       if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+       bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+       if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
        // if(di.islevelset()) InternalError("Sorry no levelset integration type on this case (1)");
        if(di.islevelset() && (CDomainOfIntegration::int1d!=kind))
@@ -4579,7 +4579,7 @@
              }
        }
        else { cout << " di.kind " << di.kind << endl;
-           InternalError(" kind of CDomainOfIntegration unkown");
+           InternalError(" kind of CDomainOfIntegration unknown");
        }
        if (where_in_stack) delete [] where_in_stack;
    }
@@ -4618,8 +4618,8 @@
        const GQuadratureFormular<R1> & FITo = di.FIE(stack);
        GQuadratureFormular<R1> FIT(FITo,3);
 
-       bool VF=b->VF();  // finite Volume or discontinous Galerkin
-       if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+       bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+       if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
        // if(di.islevelset()) InternalError("Sorry no levelset integration type on this case (1)");
        if(di.islevelset() && (CDomainOfIntegration::int1d!=kind))
@@ -4679,7 +4679,7 @@
           }
        }
        else { cout << " di.kind " << di.kind << endl;
-         InternalError(" kind of CDomainOfIntegration unkown");
+         InternalError(" kind of CDomainOfIntegration unknown");
        }
        if (where_in_stack) delete [] where_in_stack;
    }
@@ -4724,8 +4724,8 @@
  const QuadratureFormular1d & FIE = di.FIE(stack);
  const QuadratureFormular & FITo = di.FIT(stack);
  QuadratureFormular FIT(FITo,3);
- bool VF=b->VF();  // finite Volume or discontinous Galerkin
- if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+ bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+ if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
  if (verbosity>3)
  {
      if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -4970,7 +4970,7 @@
 
  }
  else
-     InternalError(" kind of CDomainOfIntegration unkown");
+     InternalError(" kind of CDomainOfIntegration unknown");
 
  if (where_in_stack) delete [] where_in_stack;
      }
@@ -5015,8 +5015,8 @@
  const QuadratureFormular1d & FIE = di.FIE(stack);
  const QuadratureFormular & FITo = di.FIT(stack);
  QuadratureFormular FIT(FITo,3);
- bool VF=b->VF();  // finite Volume or discontinous Galerkin
- if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+ bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+ if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
  if (verbosity>3)
  {
      if (CDomainOfIntegration::int1d==kind) cout << "  -- boundary int border ( nQP: "<< FIE.n << ") ,"  ;
@@ -5261,7 +5261,7 @@
 
  }
  else
-     InternalError(" kind of CDomainOfIntegration unkown");
+     InternalError(" kind of CDomainOfIntegration unknown");
 
  if (where_in_stack) delete [] where_in_stack;
      }
@@ -5301,8 +5301,8 @@
     const GQuadratureFormular<R1> & FITo = di.FIE(stack);
     GQuadratureFormular<R1> FIT(FITo,3);
 
-    bool VF=b->VF();  // finite Volume or discontinous Galerkin
-    if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+    bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+    if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
     // if(di.islevelset()) InternalError("Sorry no levelset integration type on this case (1)");
     if(di.islevelset() && (CDomainOfIntegration::int1d!=kind))
@@ -5362,7 +5362,7 @@
        }
     }
     else { cout << " di.kind " << di.kind << endl;
-      InternalError(" kind of CDomainOfIntegration unkown");
+      InternalError(" kind of CDomainOfIntegration unknown");
     }
     if (where_in_stack) delete [] where_in_stack;
 }
@@ -5406,8 +5406,8 @@
       const GQuadratureFormular<R1> & FITo = di.FIE(stack);
       GQuadratureFormular<R1> FIT(FITo,3);
 
-      bool VF=b->VF();  // finite Volume or discontinous Galerkin
-      if (verbosity>2) cout << "  -- discontinous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
+      bool VF=b->VF();  // finite Volume or discontinuous Galerkin
+      if (verbosity>2) cout << "  -- discontinuous Galerkin  =" << VF << " size of Mat =" << A.size()<< " Bytes\n";
 
       // if(di.islevelset()) InternalError("Sorry no levelset integration type on this case (1)");
       if(di.islevelset() && (CDomainOfIntegration::int1d!=kind))
@@ -5475,7 +5475,7 @@
             }
       }
       else { cout << " di.kind " << di.kind << endl;
-          InternalError(" kind of CDomainOfIntegration unkown");
+          InternalError(" kind of CDomainOfIntegration unknown");
       }
       if (where_in_stack) delete [] where_in_stack;
   }
@@ -9622,8 +9622,8 @@
         //  cout << "AssembleLinearForm " << l->l->v.size() << endl;
         set<int> setoflab;
         bool all=true;
-        bool VF=l->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- AssembleLinearForm 2, discontinous Galerkin  =" << VF << " binside = "<< binside
+        bool VF=l->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- AssembleLinearForm 2, discontinuous Galerkin  =" << VF << " binside = "<< binside
         << " levelset integration " <<di.islevelset()<< " withmap: "<<  di.withmap() << "\n";
         //  if( di.withmap()) { ExecError(" no map  in the case (6)??");}
         Expression  const * const mapt=di.mapt[0] ? di.mapt:0;
@@ -9950,8 +9950,8 @@
         //  cout << "AssembleLinearForm " << l->l->v.size() << endl;
         set<int> setoflab;
         bool all=true;
-        bool VF=l->VF();  // finite Volume or discontinous Galerkin
-        if (verbosity>2) cout << "  -- AssembleLinearForm 1,  discontinous Galerkin  =" << VF << " binside = "<< binside <<"\n";
+        bool VF=l->VF();  // finite Volume or discontinuous Galerkin
+        if (verbosity>2) cout << "  -- AssembleLinearForm 1,  discontinuous Galerkin  =" << VF << " binside = "<< binside <<"\n";
 
         if (verbosity>3)
         {
@@ -10033,7 +10033,7 @@
             else cout << endl;
         }
         if (kind==CDomainOfIntegration::int2d)
-        { //AFAIRE("3D Elment RHS CDomainOfIntegration::int2d");
+        { //AFAIRE("3D Element RHS CDomainOfIntegration::int2d");
             double  ss =0;
             if(VF) InternalError(" no jump or average in int1d of RHS");
             if(di.islevelset()) // init on level set (of RHS)
@@ -10112,7 +10112,7 @@
             }
         }
         else if (kind==CDomainOfIntegration::intalledges)
-        {     AFAIRE("3D Elment RHS CDomainOfIntegration::intalledges");
+        {     AFAIRE("3D Element RHS CDomainOfIntegration::intalledges");
             /*
              if(VF)
              {
@@ -10295,9 +10295,9 @@
         //  cout << "AssembleLinearForm " << l->l->v.size() << endl;
         set<int> setoflab;
         bool all=true;
-        bool VF=l->VF();  // finite Volume or discontinous Galerkin
+        bool VF=l->VF();  // finite Volume or discontinuous Galerkin
 
-        if (verbosity>2) cout << "  -- AssembleLinearForm S, discontinous Galerkin  =" << VF << " binside = "<< binside
+        if (verbosity>2) cout << "  -- AssembleLinearForm S, discontinuous Galerkin  =" << VF << " binside = "<< binside
             << " levelset integration " <<di.islevelset()<< " withmap: "<<  di.withmap() << "\n";
         //  if( di.withmap()) { ExecError(" no map  in the case (6)??");}
         Expression  const * const mapt=di.mapt[0] ? di.mapt:0;
@@ -10597,9 +10597,9 @@
         //  cout << "AssembleLinearForm " << l->l->v.size() << endl;
         set<int> setoflab;
         bool all=true;
-        bool VF=l->VF();  // finite Volume or discontinous Galerkin
+        bool VF=l->VF();  // finite Volume or discontinuous Galerkin
 
-        if (verbosity>2) cout << "  -- AssembleLinearForm L, discontinous Galerkin  =" << VF << " binside = "<< binside
+        if (verbosity>2) cout << "  -- AssembleLinearForm L, discontinuous Galerkin  =" << VF << " binside = "<< binside
             << " levelset integration " <<di.islevelset()<< " withmap: "<<  di.withmap() << " kind int: " << kind<< "\n";
         //  if( di.withmap()) { ExecError(" no map  in the case (6)??");}
         Expression  const * const mapt=di.mapt[0] ? di.mapt:0;
@@ -10688,7 +10688,7 @@
         }
         else
         {
-            cerr << " Error integration on MeshL unknow  kind " << kind << endl;
+            cerr << " Error integration on MeshL unknown  kind " << kind << endl;
             ffassert(0);
             
         }
@@ -11332,14 +11332,14 @@
             for (int k=0;k<n_name_param;k++)
             cerr << name_param[k].name << " ";
             cerr << endl;
-            CompileError("Unkown name argument or two times same name argument ");
+            CompileError("Unknown name argument or two times same name argument ");
         }
     }
 
     if (nbarray)
     { // new version ok
         if(nbarray!=2)
-        CompileError(" Must have 2 array, one for unknow functions, one for test functions");
+        CompileError(" Must have 2 array, one for unknown functions, one for test functions");
         N = array[0]->size();
         M = array[1]->size();
         var.resize(N+M);
@@ -11659,7 +11659,7 @@
 
         if(nbarray!=ordre)
         { cerr << " form " << ordre << " == " << nbarray << " Nb of Array "<<endl;
-            CompileError(" Must have 1 or 2 array, one for unknow functions, one for test functions");
+            CompileError(" Must have 1 or 2 array, one for unknown functions, one for test functions");
         }
         for (int k=0;k<ordre;k++)
         for  (int i=0,iend=array[k]->size();i<iend;i++)
--- a/readme/HISTORY_BEFORE_2005
+++ b/readme/HISTORY_BEFORE_2005
@@ -432,7 +432,7 @@
      
  16/04/2004 
   - add matrix tools 
-    bluid interpolation interpolation matric from a FEspace VH  to an other FEspace Vh
+    bluid interpolation interpolation matric from a FEspace VH  to another FEspace Vh
        matrix Ih=matrix B= interplotematrix(VH,Vh); 
 	// where  Vh correspond to  line and Vh to column 
        the named parameters can be 
--- a/src/bamglib/MeshDraw.cpp
+++ b/src/bamglib/MeshDraw.cpp
@@ -302,7 +302,7 @@
         for (int i = 0; i < nbt; i++)
           if (triangles[i].det == 0) {
             triangles[i].Draw( );
-            cout << " Bizzare " << i << endl;
+            cout << " Bizarre " << i << endl;
           }
         couleur(1);
       }
--- a/src/femlib/GQuadTree.cpp
+++ b/src/femlib/GQuadTree.cpp
@@ -851,7 +851,7 @@
 	  nl[n++]=i;
 	}
         if(verbosity>19 && nbdeja >1) {
-           cout << " Bizzare loop in search "<< nbdeja << "       tet it=" << it ;
+           cout << " Bizarre loop in search "<< nbdeja << "       tet it=" << it ;
            cout << "  K.mesure=" << K.mesure() ;
            cout << " eps=" << eps << " : " ;
            for(int i=0;i<nkv;++i)
--- a/src/bamglib/Mesh2.cpp
+++ b/src/bamglib/Mesh2.cpp
@@ -1115,7 +1115,7 @@
 #endif
         while ((ks = SwapForForcingEdge(va, vb, tc, detss, det1, det2, NbSwap)))
           if (l++ > 10000000) {
-            cerr << " Loop in forcing Egde AB "
+            cerr << " Loop in forcing Edge AB "
                  << "\n vertex A " << a << "\n vertex B " << b << "\n nb de swap " << NbSwap
                  << "\n nb of try swap too big = " << l << " greater than " << 1000000 << endl;
 
@@ -1703,7 +1703,7 @@
         ordre[i] = vertices + j;
         ordre[i]->ReferenceNumber = i;
       }
-      // be carefull
+      // be careful
       Int4 iv = nbvold;
       for (i = nbvold; i < nbv; i++) {    // for all the new point
         Vertex &vi = *ordre[i];
@@ -2750,7 +2750,7 @@
         GeometricalEdge &eg = *Gh.subdomains[i].edge;
         subdomains[i].ref = Gh.subdomains[i].ref;
         int ssdlab = subdomains[i].ref;
-        // by carefull is not easy to find a edge create from a GeometricalEdge
+        // by careful is not easy to find a edge create from a GeometricalEdge
         // see routine MakeGeometricalEdgeToEdge
         Edge &e = *GeometricalEdgetoEdge[Gh.Number(eg)];
         assert(&e);
@@ -2889,7 +2889,7 @@
     }
 
     // move the Vertices without a copy of the array
-    // be carefull not trivial code
+    // be careful not trivial code
     Int4 j;
     for (it = 0; it < nbv; it++)    // for all sub cycles of the permutation renu
       if (renu[it] >= 0)            // a new sub cycle
@@ -2944,7 +2944,7 @@
       subdomains[i].head = triangles + renu[Number(subdomains[i].head)];
 
     // move the Triangles  without a copy of the array
-    // be carefull not trivial code
+    // be careful not trivial code
     for (it = 0; it < nbt; it++)    // for all sub cycles of the permutation renu
       if (renu[it] >= 0)            // a new sub cycle
       {
@@ -4547,7 +4547,7 @@
     area *= 3;
     gammamn = sqrt(gammamn);
     gammamx = sqrt(gammamx);
-    cout << "  -- adaptmesh Regulary:  Nb triangles " << nt << " , h  min " << hmin << " , h max "
+    cout << "  -- adaptmesh Regularly:  Nb triangles " << nt << " , h  min " << hmin << " , h max "
          << hmax << endl;
     cout << "     area =  " << area << " , M area = " << Marea << " , M area/( |Khat| nt) "
          << Marea / (aireKh * nt) << endl;
--- a/src/bamglib/MeshGeom.cpp
+++ b/src/bamglib/MeshGeom.cpp
@@ -806,7 +806,7 @@
       R2 v10 = edges[i].v[1]->r - edges[i].v[0]->r;
       Real8 lv10 = Norme2(v10);
       if (lv10 == 0) {
-        cerr << "The length  of " << i << "th Egde is 0 " << endl;
+        cerr << "The length  of " << i << "th Edge is 0 " << endl;
         MeshError(1);
       }
       eangle[i] = atan2(v10.y, v10.x);    // angle in [ -Pi,Pi ]
--- a/src/femlib/BamgFreeFem.cpp
+++ b/src/femlib/BamgFreeFem.cpp
@@ -408,7 +408,7 @@
         if((pintern->M() != 2 ) && ( pintern->M()!=3))
         {
             cout << " point m = " <<pintern->M()<<endl;
-            ExecError("Errror: BuildMesh number of column of internal point (point=)  must be 2 or 3!");
+            ExecError("Error: BuildMesh number of column of internal point (point=)  must be 2 or 3!");
         }
     }
     int brefintp= -2000000000;
@@ -932,7 +932,7 @@
       nv=0;
       ifstream f(s->c_str());
       if(!f) {cerr <<" Error opening file " << *s << endl;
-      ExecError("Openning file ");}
+      ExecError("Opening file ");}
       while (f.good())
         {
           R2 P;
--- a/src/fflib/lgfem.cpp
+++ b/src/fflib/lgfem.cpp
@@ -438,7 +438,7 @@
       assert(mp->TS);
       l = mp->TS->lenEdgesmax( );}
     else if (mp->d == 3 && mp->dHat == 1){
-      cerr << " Unkown operator for curve 3D" << endl;
+      cerr << " Unknown operator for curve 3D" << endl;
       ffassert(0);
     }
     return SetAny< double >(l);
@@ -1119,7 +1119,7 @@
             else {
               cout << ie2 << " ~ " << im0->second[0] << " " << im0->second[1] << ", "
                    << im1->second[0] << " " << im1->second[1] << endl;
-              ExecError("periodic: Sorry one egde is losted ");
+              ExecError("periodic: Sorry one edge is losted ");
             }
             if (verbosity > 50) cout << " ( " << im0->second << " , " << im1->second << " ) .. ";
             ffassert(ie1 >= 0 && ie1 < Th.neb);
@@ -3229,7 +3229,7 @@
           }
           wsptr2free->clean(swsptr2free);    // ADD FH 11/2017
         }
-        if (verbosity > 5) cout << " Lenght level set = " << llevelset << endl;
+        if (verbosity > 5) cout << " Length level set = " << llevelset << endl;
 
       }
 
@@ -3381,7 +3381,7 @@
           wsptr2free->clean(swsptr2free);    // ADD FH 11/2017
         }
     } else {
-      InternalError("CDomainOfIntegration kind unkown");
+      InternalError("CDomainOfIntegration kind unknown");
     }
   }
 
@@ -3647,7 +3647,7 @@
  
           wsptr2free->clean(swsptr2free);    // ADD FH 11/2017
         }
-        if (verbosity > 5) cout << " Lenght level set = " << llevelset << endl;
+        if (verbosity > 5) cout << " Length level set = " << llevelset << endl;
 
       }
 
@@ -3763,7 +3763,7 @@
     } else if (kind == CDomainOfIntegration::intallVFedges) {
       ffassert(0);    // TODO AXEL
     } else {
-      InternalError("CDomainOfIntegration kind unkown");
+      InternalError("CDomainOfIntegration kind unknown");
     }
   } else if (dim == 3 && !surface && curve)
   {
@@ -3811,12 +3811,12 @@
     }
     else
     {
-        InternalError("int Curve CDomainOfIntegration kind unkown");
+        InternalError("int Curve CDomainOfIntegration kind unknown");
     }
       
       
   } else {
-    InternalError("CDomainOfIntegration dim unkown");
+    InternalError("CDomainOfIntegration dim unknown");
   }
 
   *MeshPointStack(stack) = mp;
@@ -4904,7 +4904,7 @@
           Show("v)  switch between show  the numerical value of iso or not", i++);
           Show("p)   save  plot in a Postscprit file", i++);
           Show("m)  switch between show  meshes or not", i++);
-          Show("p)  switch between show  quadtree or not (for debuging)", i++);
+          Show("p)  switch between show  quadtree or not (for debugging)", i++);
           Show("t)  find  Triangle ", i++);
           Show("?)  show this help window", i++);
           Show("any other key : continue ", ++i);
@@ -6901,7 +6901,7 @@
   ffassert(n > 0);
   if (fes->nbitem( ) != (size_t)n) {
     cerr << " the array size must be " << fes->nbitem( ) << " not " << n << endl;
-    CompileError("Invalide array size  for  vectorial fespace function");
+    CompileError("Invalid array size  for  vectorial fespace function");
   }
   for (int i = 0; i < n; i++) {
     str += ids[i].id;
@@ -6939,7 +6939,7 @@
   else if (dim == 5)
     return NewFEvariableT< v_fesL, 5 >(pids, currentblock, fespacetype, init, cplx, dim);
   else
-    CompileError("Invalide fespace on Rd  ( d != 2 or 3) ");
+    CompileError("Invalid fespace on Rd  ( d != 2 or 3) ");
   return C_F0( );
 }
 C_F0 NewFEvariable(const char *id, Block *currentblock, C_F0 &fespacetype, CC_F0 init, bool cplx,
--- a/plugin/seq/pipe.cpp
+++ b/plugin/seq/pipe.cpp
@@ -114,7 +114,7 @@
   } else if (mode == "r") {
     om = ios_base::in;
   } else {
-    ExecError("Invalide mode pstream r,r+,w ");
+    ExecError("Invalid mode pstream r,r+,w ");
   }
 
   if (verbosity > 10) {
@@ -216,7 +216,7 @@
   } else if (mode == "r") {
     om = ios_base::in;
   } else {
-    ExecError("Invalide mode pstream r,r+,w ");
+    ExecError("Invalid mode pstream r,r+,w ");
   }
 
   if (verbosity > 10) {
--- a/src/bamglib/Mesh2.h
+++ b/src/bamglib/Mesh2.h
@@ -111,7 +111,7 @@
 
   Int4 AGoodNumberPrimeWith(Int4 n);
 
-  // remark all the angle are in radian beetwen [-Pi,Pi]
+  // remark all the angle are in radian between [-Pi,Pi]
 
   class Geometry;
   // static Geometry *NULLGeometry=0;
@@ -1417,7 +1417,7 @@
          ((*t1).ns[VerticesOfTriangularEdge[a1][1]] !=
           (*t2).ns[VerticesOfTriangularEdge[a2][0]]))) {
       if (CurrentTh)
-        cerr << " In Triangles beetween Triangle " << CurrentTh->Number(t1) << " and "
+        cerr << " In Triangles between Triangle " << CurrentTh->Number(t1) << " and "
              << CurrentTh->Number(t2) << endl;
       cerr << "---- t1=" << t1 << " " << a1 << ",  t2=" << t2 << " " << a2 << endl;
       cerr << "t1=" << t1 << " " << a1 << " " << t1->ns[VerticesOfTriangularEdge[a1][0]] << " "
--- a/src/femlib/GenericMesh.hpp
+++ b/src/femlib/GenericMesh.hpp
@@ -989,7 +989,7 @@
         {
             if( p->second.first && p->second.second)
             {
-                if(verbosity>2 && step==0)  cout << " error in orientation of internal face beetwen region "
+                if(verbosity>2 && step==0)  cout << " error in orientation of internal face between region "
                     << p->first.first << " , " << p->first.second << " to no zero value "
                     << p->second.first << "  " << p->second.second << endl;
                 uncorrect++;
--- a/src/femlib/fem.cpp
+++ b/src/femlib/fem.cpp
@@ -214,7 +214,7 @@
 			k = j0+j1; // code of current edge
 			int jm = Min(j0,j1), NbAdj=0, He=-1;
 			int *pm=Head+k;
-			while (*pm>=0) // be carefull
+			while (*pm>=0) // be careful
 			{
 			    int m=*pm,jj=m%3,ii=m/3, jj0,jj1;
 			    VerticesNumberOfEdge(triangles[ii],jj,jj0,jj1);
@@ -789,7 +789,7 @@
 
 	if (k==2) // 2
 	{
-	    // let j be the vertex beetween the 2 edges
+	    // let j be the vertex between the 2 edges
 	    int j = 3-neg[0]-neg[1];
 	    R S = Area2(P,PF,Q[j]);
 
@@ -1487,7 +1487,7 @@
 
 	if (k==2) // 2
 	{
-	    // let j be the vertex beetween the 2 edges
+	    // let j be the vertex between the 2 edges
 	    int j = 3-neg[0]-neg[1];
 	    R S = Area2(P,PF,Q[j]);
 
--- a/src/fflib/lgmat.cpp
+++ b/src/fflib/lgmat.cpp
@@ -1514,7 +1514,7 @@
 	if(data[4+i]>=NVh)
 	  {
 	      cout << "The Uh componante " << i << " -> " << data[4+i] << " >= " << NVh << " number of Vh Componante " <<endl;
-	      ExecError("Interpolation incompability beetween componante ");
+	      ExecError("Interpolation incompability between componante ");
 	  }
 
   ffassert(Vh);
@@ -1579,7 +1579,7 @@
         if(data[4+i]>=NVh)
         {
           cout << "The Uh componante " << i << " -> " << data[4+i] << " >= " << NVh << " number of Vh Componante " <<endl;
-          ExecError("Interpolation incompability beetween componante ");
+          ExecError("Interpolation incompability between componante ");
         }
         if(!init) sparse_mat->init();
         sparse_mat->typemat=0;//(TypeSolveMat::NONESQUARE); //  none square matrice (morse)
@@ -1879,7 +1879,7 @@
      cerr << ac << " " << a << endl;
      ExecError("Out of bound in operator Matrice_Creuse<R> (,)");}
    R *  p =a->npij(b,c);
-   if( !p) { if(verbosity) cerr << "Error: the coef a(" << b << ","   << c << ")  do'nt exist in sparse matrix "
+   if( !p) { if(verbosity) cerr << "Error: the coef a(" << b << ","   << c << ")  doesn't exist in sparse matrix "
            << " Matrix  type = " << typeid(ac).name() << endl;
        ExecError("Use of unexisting coef in sparse matrix operator a(i,j) ");}
     return  p;}
@@ -2818,7 +2818,7 @@
     //  gestion of zero block ????
 
     for (int j=0;j<M;++j)
-    {  if(verbosity>99) cout << j << " colum size" << Oj(j+1) << endl;
+    {  if(verbosity>99) cout << j << " column size" << Oj(j+1) << endl;
         if   ( Oj(j+1) ==0) {
             Oj(j+1)=1;
             if( Oj(j+1) !=1)  err++;}
--- a/src/fflib/AFunction.hpp
+++ b/src/fflib/AFunction.hpp
@@ -2489,7 +2489,7 @@
 public:
     E_F0 * code(const basicAC_F0 & args) const
     {  //cout << "A op B \n" ;
-        cout << " Error expression impossible beetween "<< typeid(A).name() << " ,  "<<typeid(B).name() <<endl;
+        cout << " Error expression impossible between "<< typeid(A).name() << " ,  "<<typeid(B).name() <<endl;
         CompileError( "  Expression must return bad type!!!");
         return  0;}
     OneBinaryOperatorBug():
--- a/plugin/seq/ff-Ipopt.cpp
+++ b/plugin/seq/ff-Ipopt.cpp
@@ -1092,7 +1092,7 @@
 
 /*****************************************************************************************************************************
  *	OptimIpopt & OptimIpopt::E_Ipopt - The interface class
- *  Do the link beetween freefem and Ipopt
+ *  Do the link between freefem and Ipopt
  *****************************************************************************************************************************/
 class OptimIpopt : public OneOperator {
  public:
--- a/plugin/seq/ClosePoints.cpp
+++ b/plugin/seq/ClosePoints.cpp
@@ -773,7 +773,7 @@
 
     if (k == 2)    // 2
     {
-      // let j be the vertex beetween the 2 edges
+      // let j be the vertex between the 2 edges
       int j = 3 - neg[0] - neg[1];
       R S = Area2(P, PF, Q[j]);
 
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -112,7 +112,7 @@
 ## [4.7]
 ### Added
 
-- new way to build matrix beetween 2d Finite element 2d and Curve finite element to do mortar (Thank to Axel ) , see first example `examples/tutorial/mortar-DN-4-v4.5.edp`
+- new way to build matrix between 2d Finite element 2d and Curve finite element to do mortar (Thank to Axel ) , see first example `examples/tutorial/mortar-DN-4-v4.5.edp`
 - add `Ns` normal vector  in R^3 on meshS (normal of the surface) of current point (to day Ns of [x,y,0] plan  is [0,0,-1])  no be compatible to exterior normal.
 - add `Tl` tangent vector in R^3 on meshL (tangent vector of the line/curve) of current point
 - compile ffmaster / ffslave example under windows (thanks to johann@ifado.de)
--- a/examples/plugin/Leman-mesh.edp
+++ b/examples/plugin/Leman-mesh.edp
@@ -7,7 +7,7 @@
 int nc;// nb of curve
 {
   real[int,int] ff1(leman); // read  image and set to an rect. array
-  int nx = ff1.n, ny=ff1.m; // grey value beetween 0 to 1 (dark)
+  int nx = ff1.n, ny=ff1.m; // grey value between 0 to 1 (dark)
   // build a Cartesian mesh such that the origne is qt the right place.
   mesh Th=square(nx-1,ny-1,[(nx-1)*(x),(ny-1)*(1-y)]);
    // warning  the numbering is of the vertices (x,y) is
--- a/readme/HISTORY
+++ b/readme/HISTORY
@@ -2520,7 +2520,7 @@
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m18a12454e23f3bd1d73490b9ecdc8e99662b04e7[m   correct trouble  in Boundary condition  when we mixte some   composite FE et atomic FE.  Example:     fespace Xh(Th,[P2,P2]);     fespace Mh(Th,P1);     Xh [u1,u2], [w1,w2];     Mh p, r;     solve stokes([u1,u2,p],[w1,w2,r]) =    This imply change in FEspace.hpp so all tke .dll must bee recompiled    Thanks To stefano.micheletti@polimi.it
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m909c46aef2b7704eb11e70551e7eb7f92e12eaa6[m   remove check suffix .edp to be compatible with drawbdmesh.exe
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m8fde9dd199f02fd46879f3f29b6b49afc23a8311[m   add line un INNOTAVION
-[1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m750a157877bf2c13d65517acbb1340c8765087f9[m   add bamg example an correct problem beetween bamg and freefem graphic   set the version to 2.6-1
+[1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m750a157877bf2c13d65517acbb1340c8765087f9[m   add bamg example an correct problem between bamg and freefem graphic   set the version to 2.6-1
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33ma8fd7c5bae8e6296ae5f923bed100a158ddfd675[m  correct load.link under windows with new list of .dll files.
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m9ca61464ddf9e25f7440c29ac1b3224f702bc40f[m   correct load.link script (change list of ff++ dll)
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m6d563c0edfece9d6fff885743d44538660738740[m   Now the all.edp of tutorial run under winder (very hard word). FH
@@ -2542,7 +2542,7 @@
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m12d4b5f2c72d8b1a710100162e40cb76059748c0[m add missing include climits in src/femlib/fem.cpp
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33meffb463b83c7b447bb1c630d212e7832e4379b1b[m   correct mistake in interpolation procedure, (in Mesh::Find methode)   complete writting (more clean ??)
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33mc26f081d2e386dc4b3626a4a023f0f6877b86fa9[m  correct bug in freeboundary;edp (trap on  windows some time )
-[1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m153b11f00fa102a9045ca5a904e7894961a389a2[m  coorect consistance beetween movmesh and checkmovemesh
+[1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m153b11f00fa102a9045ca5a904e7894961a389a2[m  coorect consistance between movmesh and checkmovemesh
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m7fd3897b5ef4c9089fb8b55771db85ce0a9472ed[m  add CR  at end of file src/fflib/ffstack.hpp
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33m88788e49b9d130422cea89d842a6cdb8e4caae6d[m  correct misspelling
 [1;31m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m [36m|[m [1;32m|[m [1;34m|[m [1;36m|[m [32m|[m [34m|[m * [34m|[m [33mf08c34113097957e9311fde4da2bb7ba62e35723[m   pass to 2.5-1   add vim color syntaxe file
@@ -4580,7 +4580,7 @@
 [1;31m|[m  [35m/[m [34m/[m  
 * [35m|[m [34m|[m [33ma7f737a68067571894254fc130ba74e2f0f235f4[m coorect of pb float / float un vtk file
 * [35m|[m [34m|[m [33m8c982af90483b83cb802e941de79a3f164dedfee[m Maxwell solver + less output when not needed.
-* [35m|[m [34m|[m [33m1677aee31cb0ba29f7c43322711a23047c703901[m correct the class OneOperator1s_   mistake beetween E_F0 and CODE class add GPvortices function in BEC plugin
+* [35m|[m [34m|[m [33m1677aee31cb0ba29f7c43322711a23047c703901[m correct the class OneOperator1s_   mistake between E_F0 and CODE class add GPvortices function in BEC plugin
 * [35m|[m [34m|[m [33mc2113330a73a2ff1a7870d28c9cff67f6669e94e[m add GPvortex and dxGPvertex , dyGPVortex in BEC plugin
 * [35m|[m [34m|[m [33ma6c443c3636d72b1012816b9b1eb626b256e6df6[m try wrong thing
 * [35m|[m [34m|[m [33m056acff7cf099c4f700b97bac8ac28f1e7d8c530[m - tools to build new FiniteElement2d and FiniteElement3d from quadrature formula
--- a/src/bamglib/MeshQuad.cpp
+++ b/src/bamglib/MeshQuad.cpp
@@ -173,7 +173,7 @@
     }
     Edge *e = &BhAB;
     assert(pA && pB && e);
-    // be carefull the back ground edge e is on same geom edge
+    // be careful the back ground edge e is on same geom edge
     // of the initiale edge def by the 2 vertex A B;
     assert(e >= BTh.edges && e < BTh.edges + BTh.nbe);    // Is a background Mesh;
     // walk on BTh edge
--- a/plugin/seq/Curvature.cpp
+++ b/plugin/seq/Curvature.cpp
@@ -373,7 +373,7 @@
     nee[0] = -1;    // on ouvre 
   } else {
     if ((nbg != 1) || (verbosity > 4)) {
-      cout << " error (no connexe boundary be carefull with internal boundary (pb of sens) ) : nb "
+      cout << " error (no connexe boundary be careful with internal boundary (pb of sens) ) : nb "
               "start = "
            << nbg << endl;
     }
--- a/src/Eigen/eigenvalue.cpp
+++ b/src/Eigen/eigenvalue.cpp
@@ -525,16 +525,16 @@
   // 2 <= NCV-NEV and NCV <= N
 
   if (!(ncv <= n) && sym)
-    serr[err++] = "   ( ncv <= n) (symetric case) ";
+    serr[err++] = "   ( ncv <= n) (symmetric case) ";
   if (!((ncv <= n) && 2 <= (ncv-nbev )) && !sym )
-    serr[err++] = "   ( ncv <= n) 2 <= (ncv-nev ) (non-symetric case) ";
+    serr[err++] = "   ( ncv <= n) 2 <= (ncv-nev ) (non-symmetric case) ";
 
   if (n != OP1.M)
     serr[err++] = " the first matrix in EigneValue is not square.";
   if (n != B.N)
     serr[err++] = "Sorry the row's number of the secand matrix in EigneValue is wrong.";
   if (n != B.M)
-    serr[err++] = "Sorry the colum's number of the secand matrix in EigneValue is wrong.";
+    serr[err++] = "Sorry the column's number of the secand matrix in EigneValue is wrong.";
 
   if (verbosity && mpirank == 0) {
     if(sym)
@@ -665,7 +665,7 @@
       }
     }
   } else {
-    // non symetric case ,
+    // non symmetric case ,
     // Finding an Arnoldi basis.
     //int mode = 3; // Shift invert
     int ido = 0;
@@ -906,7 +906,7 @@
   if (n != B.N)
     serr[err++] = "Sorry the row's number of the secand matrix in EigneValue is wrong.";
   if (n != B.M)
-    serr[err++] = "Sorry the colum's number of the secand matrix in EigneValue is wrong.";
+    serr[err++] = "Sorry the column's number of the secand matrix in EigneValue is wrong.";
   if (verbosity)
     cout << "Complex eigenvalue problem: A*x - B*x*lambda" << endl;
   if (verbosity > 9 || err)
--- a/src/femlib/MatriceElementaire.hpp
+++ b/src/femlib/MatriceElementaire.hpp
@@ -46,7 +46,7 @@
         {}
        
 
- //  for discontinous Galerkine method
+ //  for discontinuous Galerkine method
   MatriceElementaire(int datasize,int llga,int *nni,
                      int lk,
                      TypeOfMatriceElementaire t=Symmetric, int ooptim=1
@@ -63,7 +63,7 @@
         optim(ooptim)
        { ffassert(lk>=0);}
 
-    //  for discontinous Galerkine method
+    //  for discontinuous Galerkine method
     MatriceElementaire(int datasize,int llga,int *nni,int lki,int *nnj,int lkj,
                        TypeOfMatriceElementaire t=Full,int ooptim=1
                        )
@@ -152,7 +152,7 @@
     MatriceElementaire<R>(UUh.esize(),llga,nni,nni,t,optim)
   {}
 
-  //  for discontinous Galerkine method
+  //  for discontinuous Galerkine method
   MatriceElementaireFES(const FESpace & UUh,int llga,int *nni,
 			int lk,
 			TypeOfMatriceElementaire t=Symmetric,
--- a/src/femlib/MatriceCreuse.hpp
+++ b/src/femlib/MatriceCreuse.hpp
@@ -235,7 +235,7 @@
        h -= Cg;  //  h = -Cg * gamma* h
      }
      //if (nbitermax <= nbitermax )
-      cout << "CG does'nt converge: " << nbitermax <<   " ||g||^2 = " << g2 << " reps2= " << reps2 << endl;
+      cout << "CG doesn't converge: " << nbitermax <<   " ||g||^2 = " << g2 << " reps2= " << reps2 << endl;
    return 0;
 }
 
--- a/plugin/mpi/MPICG.cpp
+++ b/plugin/mpi/MPICG.cpp
@@ -155,7 +155,7 @@
 	  h -= Cg;  //  h = -Cg * gamma* h       
       }
     //    if (itermax <= nbitermax  )
-	cout << "CG does'nt converge: " << nbitermax <<   " ||g||^2 = " << g2 << " reps2= " << reps2 << endl; 
+	cout << "CG doesn't converge: " << nbitermax <<   " ||g||^2 = " << g2 << " reps2= " << reps2 << endl;
     return 0; 
 }
 
--- a/src/bamg/bamg.cpp
+++ b/src/bamg/bamg.cpp
@@ -76,7 +76,7 @@
 
 void NewHandler( );
 void NewHandler( ) {
-  cerr << " Not enought memory" << endl;
+  cerr << " Not enough memory" << endl;
   exit(1);
 }
 void forDebug( );
@@ -305,7 +305,7 @@
       cout << "     -thetamax (double)   change the angular limit for a corner in degre " << endl;
       cout << "                       the angle is defined from 2 normals of 2 concecutives edges "
            << endl;
-      cout << "                       if no geomtry cf reading an  am_fmt, amdba, nopo .. file "
+      cout << "                       if no geometry cf reading an  am_fmt, amdba, nopo .. file "
            << endl;
 
       cout << "" << endl;
--- a/src/bamg/cvmsh2.cpp
+++ b/src/bamg/cvmsh2.cpp
@@ -76,7 +76,7 @@
 int initgraph = 0;
 void NewHandler( );
 void NewHandler( ) {
-  cerr << " Not enought memory " << endl;
+  cerr << " Not enough memory " << endl;
   exit(1);
 }
 
--- a/src/bamg/drawbdmesh.cpp
+++ b/src/bamg/drawbdmesh.cpp
@@ -49,7 +49,7 @@
 int initgraph = 0;
 void NewHandler( );
 void NewHandler( ) {
-  cerr << " Not enought memory " << endl;
+  cerr << " Not enough memory " << endl;
   exit(1);
 }
 
--- a/src/femlib/gibbs.cpp
+++ b/src/femlib/gibbs.cpp
@@ -1155,7 +1155,7 @@
        delete [] w2;
      }
     else
-      cerr << " Not enought memory (bug)" <<  nbvoisin << " " << nbvoisin/NbOfElements <<  endl;
+      cerr << " Not enough memory (bug)" <<  nbvoisin << " " << nbvoisin/NbOfElements <<  endl;
   delete [] vois;
   delete [] ptvois;
   if (err==0 && verbosity>1)
--- a/src/bamglib/MeshWrite.cpp
+++ b/src/bamglib/MeshWrite.cpp
@@ -128,7 +128,7 @@
           //-----------------------------ajout format hdf5-----------------------------//
         default:
           cerr << endl
-               << " Unkown type mesh file " << (int)type << " for Writing " << filename << endl;
+               << " Unknown type mesh file " << (int)type << " for Writing " << filename << endl;
           MeshError(1);
       }
       Int4 NbOfTria = nbt - 2 * NbOfQuad - NbOutT;
@@ -182,7 +182,7 @@
           break;
           //-----------------------------ajout format hdf5-----------------------------//
         default:
-          cerr << " Unkown type mesh file " << (int)type << " for Writing " << filename << endl;
+          cerr << " Unknown type mesh file " << (int)type << " for Writing " << filename << endl;
           MeshError(1);
       }
     else {
@@ -660,7 +660,7 @@
         f << "# BEGIN of the include geometry file because geometry is not on the disk" << Th.Gh
           << endl;
         f << "End" << endl
-          << "# END of the include geometrie file because geometry is not on the disk" << endl;
+          << "# END of the include geometry file because geometry is not on the disk" << endl;
       }
     }
     {
--- a/plugin/seq/msh3.cpp
+++ b/plugin/seq/msh3.cpp
@@ -259,7 +259,7 @@
         }
 
         for (int eh = 0; eh < 6; eh++) {
-          cout << "tetrahedra: " << k << " edge : " << eh << " lenght " << Th3[k].lenEdge(eh)
+          cout << "tetrahedra: " << k << " edge : " << eh << " length " << Th3[k].lenEdge(eh)
                << endl;
           cout << " Tet vertices : " << iv[0] << " " << iv[1] << " " << iv[2] << " " << iv[3] << " "
                << endl;
@@ -278,7 +278,7 @@
     for (int e = 0; e < 3; e++) {
       if (Th3.be(k).lenEdge(e) < Norme2(Psup - Pinf) / 1e9) {
         for (int eh = 0; eh < 3; eh++) {
-          cout << "triangles: " << k << " edge : " << eh << " lenght " << Th3.be(k).lenEdge(e)
+          cout << "triangles: " << k << " edge : " << eh << " length " << Th3.be(k).lenEdge(e)
                << endl;
         }
 
@@ -6700,7 +6700,7 @@
 
     if (nargs[1] || nargs[3])
       CompileError(
-        "obselete function, to extract a region of the mesh3, use trunc function...this function "
+        "obsolete function, to extract a region of the mesh3, use trunc function...this function "
         "returns a part of boundary 3D mesh  ->  a meshS type");
 
     if (nargs[0] && nargs[2]) CompileError("uncompatible extractmesh (Th, label= , refface=  ");
@@ -6947,7 +6947,7 @@
 			Expression Z=0 ; if(a->size( )>2) Z= to< double >((*a)[2]);
 			return new ExtractMeshLfromMesh_Op(args, t[0]->CastTo(args[0]), X, Y, Z);
 		} 
-		CompileError("ExtractMeshLfromMesh case unknow  ");		
+		CompileError("ExtractMeshLfromMesh case unknown  ");
 		return 0; 
 	}
 };
--- a/src/femlib/Mesh3dn.cpp
+++ b/src/femlib/Mesh3dn.cpp
@@ -502,7 +502,7 @@
                         iv[jj] = this->operator()(K[jj]);
                     }
                     for (int eh=0;eh<6;eh++){
-                        if(verbosity>2) cout << "tetrahedra: " << k << " edge : " << eh << " lenght "<<  this->elements[k].lenEdge(eh) << endl;
+                        if(verbosity>2) cout << "tetrahedra: " << k << " edge : " << eh << " length "<<  this->elements[k].lenEdge(eh) << endl;
                     }
                     if(verbosity>2) cout << " A tetrahedra with a very small edge was created " << endl;
                     return 1;
@@ -516,7 +516,7 @@
                 if( this->be(k).lenEdge(e) < Norme2(Psup-Pinf)/1e9 )
                 {
                     for (int eh=0;eh<3;e++){
-                        cout << "triangles: " << k << " edge : " << eh << " lenght "<<  this->be(k).lenEdge(e) << endl;
+                        cout << "triangles: " << k << " edge : " << eh << " length "<<  this->be(k).lenEdge(e) << endl;
                     }
                     cout << " A triangle with a very small edges was created " << endl;
                     return 1;
@@ -1047,7 +1047,7 @@
            cerr << " WARNING!!! The mesh file just contains a set of vertices" << endl;
            
         if(nt==0 && nbe) {
-            cerr << " ERROR!!! The old SURFACE mesh3 is obselete, please use meshS type" << endl;
+            cerr << " ERROR!!! The old SURFACE mesh3 is obsolete, please use meshS type" << endl;
          ffassert(0);
         }
         
@@ -1100,7 +1100,7 @@
             cerr << " WARNING!!! The mesh file just contains a set of vertices" << endl;
         
         if(nt==0 && nbe) {
-            cerr << " ERROR!!! The old SURFACE mesh3 is obselete, please use meshS type" << endl;
+            cerr << " ERROR!!! The old SURFACE mesh3 is obsolete, please use meshS type" << endl;
             ffassert(0);
         }
         
--- a/src/Graphics/getprog-unix.hpp
+++ b/src/Graphics/getprog-unix.hpp
@@ -326,7 +326,7 @@
     cout << "FreeFEM modules: https://modules.freefem.org/" << endl;
 
     cout << endl;
-    cout << "Please cite us in your research papers and add a link to FreeFEM on your personnal website" << endl;
+    cout << "Please cite us in your research papers and add a link to FreeFEM on your personal website" << endl;
     cout << "@article{FreeFEM," << endl;
     cout << "\tAUTHOR = {Hecht, F.}," << endl;
     cout << "\tTITLE = {New development in FreeFem++}," << endl;
--- a/plugin/seq/mshmet.cpp
+++ b/plugin/seq/mshmet.cpp
@@ -370,7 +370,7 @@
 
             break;
           default:
-            CompileError(" 3D solution for mshmest is vector (3 comp) or symetric tensor (6 comp)");
+            CompileError(" 3D solution for mshmest is vector (3 comp) or symmetric tensor (6 comp)");
             break;
         }
       } else {
@@ -657,7 +657,7 @@
 
             break;
           default:
-            CompileError(" 2D solution for mshmest is vector (2 comp) or symetric tensor (3 comp)");
+            CompileError(" 2D solution for mshmest is vector (2 comp) or symmetric tensor (3 comp)");
             break;
         }
       } else {
--- a/plugin/seq/freeyams.cpp
+++ b/plugin/seq/freeyams.cpp
@@ -630,7 +630,7 @@
             break;
           default:
             CompileError(
-              " 3D solution for yams is a scalar (1 comp) or a symetric tensor (6 comp)");
+              " 3D solution for yams is a scalar (1 comp) or a symmetric tensor (6 comp)");
             break;
         }
       } else {
@@ -989,7 +989,7 @@
             break;
           default:
             CompileError(
-              " 3D solution for yams is a scalar (1 comp) or a symetric tensor (6 comp)");
+              " 3D solution for yams is a scalar (1 comp) or a symmetric tensor (6 comp)");
             break;
         }
       } else {
--- a/plugin/seq/medit.cpp
+++ b/plugin/seq/medit.cpp
@@ -164,7 +164,7 @@
       nbsol = nsol * dim * (dim + 1) / 2;
       offsettab = dim * (dim + 1) / 2;
     } else {
-      cerr << "bug in the definition of type of solution: 1 scalar, 2 vector, 3 symetric tensor"
+      cerr << "bug in the definition of type of solution: 1 scalar, 2 vector, 3 symmetric tensor"
            << endl;
       exit(1);
     }
@@ -178,7 +178,7 @@
         firstelem = firstelem + dim * (dim + 1) / 2;
         ;
       } else {
-        cerr << "bug in the definition of type of solution: 1 scalar, 2 vector, 3 symetric tensor"
+        cerr << "bug in the definition of type of solution: 1 scalar, 2 vector, 3 symmetric tensor"
              << endl;
         exit(1);
       }
--- a/plugin/mpi/bem.cpp
+++ b/plugin/mpi/bem.cpp
@@ -935,7 +935,7 @@
         else if(!tkernel->compare("CST"))
             typeKernel[0] = 5;
         else
-            ExecError("unknow BEM kernel type ");
+            ExecError("unknown BEM kernel type ");
         
         if(mpirank==0 && verbosity>5)
             cout << "type BEM kernel " << *tkernel <<": " << typeKernel[0] << " coeff combi " << coeffcombi[0] << " wave number "<< wavenum[0] << endl;
@@ -1113,7 +1113,7 @@
         else if(!tpotential->compare("CST"))
             typePotential = 3;
         else
-            ExecError("unknow BEM Potential type ");
+            ExecError("unknown BEM Potential type ");
         
         if(mpirank==0 && verbosity>5)
             cout << "type BEM Potential " << *tpotential <<": "<< tpotential <<": " << typePotential << " wave number "<< wavenum << endl;
@@ -1526,7 +1526,7 @@
             if(mpirank == 0 && verbosity>5) cout << " test coeff mass matrix " << alpha << endl;
           
             if(mpirank == 0 && verbosity>5) {
-                cout << "FormBilinear: number of unknow finc=" << finc.first << " ,ftest= " << ftest.first << endl;
+                cout << "FormBilinear: number of unknown finc=" << finc.first << " ,ftest= " << ftest.first << endl;
                 cout << "FormBilinear: operator order finc=" << finc.second << " ,ftest= " << ftest.second << endl;      // ordre   only op_id=0
             }
             ffassert(finc.first==0 && ftest.first==0);
--- a/src/fflib/AFunction2.cpp
+++ b/src/fflib/AFunction2.cpp
@@ -194,7 +194,7 @@
 void Polymorphic::Show(const char *op,const ArrayOfaType & at,ostream &f)  const
     {
     const_iterator i=m.find(op);
-    if (i==m.end()) f << " unknow " << op << " operator " << endl;
+    if (i==m.end()) f << " unknown " << op << " operator " << endl;
     else i->second->Show(at,f);
   }
 
--- a/src/Graphics/ffglut.cpp
+++ b/src/Graphics/ffglut.cpp
@@ -2483,14 +2483,14 @@
     win->Show("+) -)   zoom in/out  around the cursor 3/2 times ",i++);
     win->Show("=)   reset vue ",i++);
     win->Show("r)   refresh plot ",i++);
-    win->Show("up, down, left, right) special keys  to  tanslate   ",i++);
+    win->Show("up, down, left, right) special keys  to  translate   ",i++);
     win->Show("3)   switch 3d/2d plot (in test)  keys : ",i++);
     win->Show(" z) Z) (focal zoom unzoom)  ",i++);
     win->Show(" H) h) switch increase or decrease the Z scale of the plot ",i++);
     win->Show("mouse motion)    ",i++);
     win->Show("   - left button)  rotate    ",i++);
     win->Show("   - right button)       zoom        (ctrl+button on mac) ",i++);
-    win->Show("   - right button +alt)  tanslate    (alt+ctrl+button on mac)",i++);
+    win->Show("   - right button +alt)  translate    (alt+ctrl+button on mac)",i++);
 
     win->Show("a) A) increase or decrease the arrow size",i++);
     win->Show("B)  switch between show  border meshes or not",i++);
@@ -2673,7 +2673,7 @@
                 case 19: fin >> keepPV; break;
                 case 20: fin >> echelle;break;
                 default:
-                    cout << "Fatal error: Unknow  case  : " << cas <<endl;
+                    cout << "Fatal error: Unknown  case  : " << cas <<endl;
                     ffassert(0);
                     break;
             }
@@ -2731,7 +2731,7 @@
                 default:
                     static int nccc=0;
                     if(nccc++<5)
-                        cout << " Skip Unknow case " << cas <<" (ffglut is too old ?)\n";
+                        cout << " Skip Unknown case " << cas <<" (ffglut is too old ?)\n";
                     fin.SkipData();
                     break;
             }
@@ -3044,7 +3044,7 @@
         }
         else
         {
-            cout << "Bizarre unkown what :  " << what<< endl;
+            cout << "Bizarre unknown what :  " << what<< endl;
             ffassert(0);
         }
         ffassert(p);
--- a/src/bamglib/Meshio.cpp
+++ b/src/bamglib/Meshio.cpp
@@ -30,7 +30,7 @@
 #include "Meshio.h"
 namespace bamg {
 
-  const char *OFortranUnFormattedFile::unkown("unkown file name");
+  const char *OFortranUnFormattedFile::unkown("unknown file name");
   void (*MeshIstreamErrorHandler)(ios &) = 0;
   ///////////////////////////////////////////////////////////
   void WriteStr(ostream &out, char *str) {
@@ -297,7 +297,7 @@
     else if (err == 3)
       cerr << "-- Erreur  write record info ";
     else
-      cerr << " unkown err " << err;
+      cerr << " unknown err " << err;
 
     cerr << " Record number = " << nb_rec << endl
          << " read position  in file " << j << " < " << n << " =  end on record " << endl;
@@ -317,7 +317,7 @@
     else if (err == 3)
       cerr << " Erreur  read record info ";
     else
-      cerr << " unkown err " << err;
+      cerr << " unknown err " << err;
 
     cerr << " Record number = " << nb_rec << endl
          << " read position  in file " << j << " < " << n << " =  end on record " << endl;
--- a/src/femlib/SkyLineSolver.hpp
+++ b/src/femlib/SkyLineSolver.hpp
@@ -85,7 +85,7 @@
         if(whichfac==FactorizationLU) LU(eps);
         else if (whichfac==FactorizationCholesky) cholesky(eps);
         else if (whichfac==FactorizationCrout) crout(eps);
-        else MATERROR(1,"UNKNOW FACTORIZATION type SkyLineMatrix");
+        else MATERROR(1,"UNKNOWN FACTORIZATION type SkyLineMatrix");
     }
 
   
@@ -440,8 +440,8 @@
           }
             break;
         default:
-            std::cerr << "  (operator /=(SkyLineMatrix, Error unkown type of Factorization  =" << typefac<< std::endl;
-            MATERROR(1,"unkown type of Factorization");
+            std::cerr << "  (operator /=(SkyLineMatrix, Error unknown type of Factorization  =" << typefac<< std::endl;
+            MATERROR(1,"unknown type of Factorization");
     }
     return x;
 }
--- a/src/fflib/lex.hpp
+++ b/src/fflib/lex.hpp
@@ -132,7 +132,7 @@
   const char * filename() const { 
     if ( level >=0 ) 
       return  pilesource[level].filename ? pilesource[level].filename->c_str() : " -- in macro -- ";
-    return "-- unkown --";}
+    return "-- unknown --";}
     
   void input(const char *  filename) ;
   void input(const string &str,const string *name=0,int lg=0);
--- a/src/fflib/problem.hpp
+++ b/src/fflib/problem.hpp
@@ -219,7 +219,7 @@
       { //
         C_F0 x=Find(ii->first);
         if (x.left() != atype<const finconnue *>())
-          CompileError("We expected an unkown  u=... of the problem");
+          CompileError("We expected an unknown  u=... of the problem");
         const finconnue * uu = dynamic_cast<const finconnue *>(x.LeftValue());
         ffassert(uu);
         const MGauche *ui=uu->simple();
--- a/src/femlib/HashMatrix.hpp
+++ b/src/femlib/HashMatrix.hpp
@@ -296,7 +296,7 @@
             cout << " n = " << p->n << " == " << p->N
                   << " , m= " << p->m << " "<< p->M
             << " nzz "<< p->nnz << endl;
-        cerr << " Fatal Error " << where << "  invalide HashMatrix Ptr "<< gm << " "<< p << endl;
+        cerr << " Fatal Error " << where << "  invalid HashMatrix Ptr "<< gm << " "<< p << endl;
         ffassert(0);
     }
 }
--- a/src/medit/medit.c
+++ b/src/medit/medit.c
@@ -93,7 +93,7 @@
   if (b) fprintf(stdout, "  Stereo\n");
 
   glGetIntegerv(GL_AUX_BUFFERS, &i);
-  if (i) fprintf(stdout, "  Auxilary Buffers\t%2d\n", (int)i);
+  if (i) fprintf(stdout, "  Auxiliary Buffers\t%2d\n", (int)i);
 
   glGetIntegerv(GL_INDEX_BITS, &i);
   if (i) fprintf(stdout, "  Index Bits\t\t%2d\n", (int)i);
--- a/src/mpi/parallelempi.cpp
+++ b/src/mpi/parallelempi.cpp
@@ -794,7 +794,7 @@
     if(lsz)
         DeSerialize(this, ppTh);
     if (verbosity > 100)
-      cout << "    " << mpirank << " recived from " << who << " serialized " << what << ", l="
+      cout << "    " << mpirank << " received from " << who << " serialized " << what << ", l="
            << lsz << ", tag=" << tag << " rq = " << rq << " " << *ppTh << endl;
     return false; // OK
   }
@@ -1043,7 +1043,7 @@
     }
 
   if(verbosity>100)
-    cout << "    " << mpirank << " recived from " << rank << " serialized " << what <<   ", l="
+    cout << "    " << mpirank << " received from " << rank << " serialized " << what <<   ", l="
 	 << l << ", tag=" << tag << endl;
   delete [] buf;
   p=pp+sizeof(long);
--- a/src/bamglib/MeshRead.cpp
+++ b/src/bamglib/MeshRead.cpp
@@ -809,7 +809,7 @@
       else if (ftq)
         Read_ftq(f_in);
       else {
-        cerr << " Unkown type mesh " << filename << endl;
+        cerr << " Unknown type mesh " << filename << endl;
         MeshError(2);
       }
       ConsGeometry(cutoffradian);
--- a/src/femlib/HashMatrix.cpp
+++ b/src/femlib/HashMatrix.cpp
@@ -206,7 +206,7 @@
         
     }
     else {
-        cerr << " Unkown matrix type" << endl << endl;
+        cerr << " Unknown matrix type" << endl << endl;
         ffassert(0);
     }
     
--- a/src/femlib/MeshLn.cpp
+++ b/src/femlib/MeshLn.cpp
@@ -519,7 +519,7 @@
             for(int jj=0; jj <2; jj++)
                 iv[jj] = this->operator()(K[jj]);
             if(verbosity>2)
-                cout << "EdgeL: " << k << " lenght "<<  this->elements[k].mesure() << endl;
+                cout << "EdgeL: " << k << " length "<<  this->elements[k].mesure() << endl;
             if(verbosity>2) cout << " A triangleS with a very small edge was created " << endl;
             return 1;
         }
--- a/src/femlib/MeshSn.cpp
+++ b/src/femlib/MeshSn.cpp
@@ -587,7 +587,7 @@
                     for(int jj=0; jj <3; jj++)
                         iv[jj] = this->operator()(K[jj]);
                     if(verbosity>2) for (int eh=0;eh<3;eh++)
-                        cout << "TriangleS: " << k << " edge : " << eh << " lenght "<<  this->elements[k].lenEdge(eh) << endl;
+                        cout << "TriangleS: " << k << " edge : " << eh << " length "<<  this->elements[k].lenEdge(eh) << endl;
                     if(verbosity>2) cout << " A triangleS with a very small edge was created " << endl;
                     return 1;
                 }
--- a/plugin/seq/IncompleteCholesky.cpp
+++ b/plugin/seq/IncompleteCholesky.cpp
@@ -413,7 +413,7 @@
   ffassert(n == b.N( ));
   if (trans == (cas < 0))    // (cas <0 et trans) or (not et  cas >0)
   {                          // U = L'
-    if (verbosity > 9) cout << " LU_solve:: U Backward subtitution :  " << cas << " " << trans << endl;
+    if (verbosity > 9) cout << " LU_solve:: U Backward substitution :  " << cas << " " << trans << endl;
     for (int i = n - 1; i >= 0; --i) {
       k0 = T.p[i];
       k1 = T.p[i + 1] - 1;
