SyFi
0.3
|
00001 #include <SyFi.h> 00002 00003 using namespace GiNaC; 00004 using namespace SyFi; 00005 using namespace std; 00006 00007 00008 void check_RaviartThomas() { 00009 00010 initSyFi(2); 00011 00012 ReferenceTriangle triangle("t"); 00013 RaviartThomas fe; 00014 fe.set_polygon(triangle); 00015 00016 cout <<"2D --------------------- 1 order "<<endl; 00017 fe.set_order(1); 00018 fe.compute_basis_functions(); 00019 usage(fe); 00020 00021 cout <<"2D ----------------------2 order "<<endl; 00022 fe.set_order(2); 00023 fe.compute_basis_functions(); 00024 usage(fe); 00025 00026 cout <<"2D ----------------------3 order "<<endl; 00027 fe.set_order(3); 00028 fe.compute_basis_functions(); 00029 usage(fe); 00030 00031 cout <<"2D ----------------------4 order "<<endl; 00032 fe.set_order(4); 00033 fe.compute_basis_functions(); 00034 usage(fe); 00035 00036 cout <<"2D ----------------------5 order "<<endl; 00037 fe.set_order(5); 00038 fe.compute_basis_functions(); 00039 usage(fe); 00040 00041 00042 00043 initSyFi(3); 00044 00045 ReferenceTetrahedron tetrahedron("t"); 00046 fe.set_polygon(tetrahedron); 00047 00048 00049 cout <<"3D ----------------------1 order "<<endl; 00050 fe.set_order(1); 00051 fe.compute_basis_functions(); 00052 usage(fe); 00053 00054 cout <<"3D ----------------------2 order "<<endl; 00055 fe.set_order(2); 00056 fe.compute_basis_functions(); 00057 usage(fe); 00058 00059 cout <<"3D ----------------------3 order "<<endl; 00060 fe.set_order(3); 00061 fe.compute_basis_functions(); 00062 usage(fe); 00063 00064 cout <<"3D ----------------------4 order "<<endl; 00065 fe.set_order(4); 00066 fe.compute_basis_functions(); 00067 usage(fe); 00068 00069 } 00070 00071 00072 int main() { 00073 check_RaviartThomas(); 00074 return 0; 00075 } 00076 00077 00078