亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? quadrature.c

?? 一個用來實現(xiàn)偏微分方程中網(wǎng)格的計算庫
?? C
字號:
// $Id: quadrature.C 2789 2008-04-13 02:24:40Z roystgnr $// The libMesh Finite Element Library.// Copyright (C) 2002-2007  Benjamin S. Kirk, John W. Peterson  // This library is free software; you can redistribute it and/or// modify it under the terms of the GNU Lesser General Public// License as published by the Free Software Foundation; either// version 2.1 of the License, or (at your option) any later version.  // This library 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// Lesser General Public License for more details.  // You should have received a copy of the GNU Lesser General Public// License along with this library; if not, write to the Free Software// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA// C++ includes// Local includes#include "quadrature.h"void QBase::init(const ElemType t,                 unsigned int p){  // check to see if we have already  // done the work for this quadrature rule  if (t == _type && p == _p_level)    return;  else    {      _type = t;      _p_level = p;    }          switch(_dim)    {    case 0:      this->init_0D(_type,_p_level);      return;          case 1:      this->init_1D(_type,_p_level);      return;          case 2:      this->init_2D(_type,_p_level);      return;    case 3:      this->init_3D(_type,_p_level);      return;    default:      libmesh_error();    }}void QBase::init_0D(const ElemType,                    unsigned int){  _points.resize(1);  _weights.resize(1);  _points[0] = Point(0.);  _weights[0] = 1.0;}void QBase::scale(std::pair<Real, Real> old_range,		  std::pair<Real, Real> new_range){  // Make sure we are in 1D  libmesh_assert(_dim == 1);    // Make sure that we have sane ranges   libmesh_assert(new_range.second > new_range.first);  libmesh_assert(old_range.second > old_range.first);  // Make sure there are some points  libmesh_assert(_points.size() > 0);  // We're mapping from old_range -> new_range   for (unsigned int i=0; i<_points.size(); i++)    {      _points[i](0) =	(_points[i](0) - old_range.first) *	(new_range.second - new_range.first) /	(old_range.second - old_range.first) +	new_range.first;    }  // Compute the scale factor and scale the weights  const Real scfact = (new_range.second - new_range.first) /                      (old_range.second - old_range.first);  for (unsigned int i=0; i<_points.size(); i++)    _weights[i] *= scfact;}void QBase::tensor_product_quad(const QBase& q1D){    const unsigned int n_points = q1D.n_points();    _points.resize(n_points * n_points);    _weights.resize(n_points * n_points);    unsigned int qp=0;    for (unsigned int j=0; j<n_points; j++)    for (unsigned int i=0; i<n_points; i++)      {	_points[qp](0) = q1D.qp(i)(0);	_points[qp](1) = q1D.qp(j)(0);		_weights[qp] = q1D.w(i)*q1D.w(j);		qp++;      }}void QBase::tensor_product_tri(const QBase& gauss1D, const QBase& jac1D){    // Both rules should be of the same order  libmesh_assert(gauss1D.n_points() == jac1D.n_points());  // Save the number of points as a convenient variable  const unsigned int n_points = gauss1D.n_points();    // Both rules should be between x=0 and x=1  libmesh_assert(gauss1D.qp(0)(0) >= 0.0); libmesh_assert(gauss1D.qp(n_points-1)(0) <= 1.0);  libmesh_assert(jac1D.qp(0)(0)   >= 0.0); libmesh_assert(jac1D.qp(n_points-1)(0) <= 1.0);  // Resize the points and weights vectors  _points.resize(n_points * n_points);  _weights.resize(n_points * n_points);  // Compute the conical product  unsigned int gp = 0;  for (unsigned int i=0; i<n_points; i++)    for (unsigned int j=0; j<n_points; j++)      {	_points[gp](0) = jac1D.qp(j)(0);                          //s[j];	_points[gp](1) = gauss1D.qp(i)(0) * (1.-jac1D.qp(j)(0)); //r[i]*(1.-s[j]);	_weights[gp]   = gauss1D.w(i) * jac1D.w(j);              //A[i]*B[j];	gp++;      }}void QBase::tensor_product_hex(const QBase& q1D){  const unsigned int n_points = q1D.n_points();    _points.resize(n_points * n_points * n_points);    _weights.resize(n_points * n_points * n_points);    unsigned int qp=0;    for (unsigned int k=0; k<n_points; k++)    for (unsigned int j=0; j<n_points; j++)      for (unsigned int i=0; i<n_points; i++)	{	  _points[qp](0) = q1D.qp(i)(0);	  _points[qp](1) = q1D.qp(j)(0);	  _points[qp](2) = q1D.qp(k)(0);	  	  _weights[qp] = q1D.w(i) * q1D.w(j) * q1D.w(k);	  	  qp++;	}}void QBase::tensor_product_prism(const QBase& q1D, const QBase& q2D){  const unsigned int n_points1D = q1D.n_points();  const unsigned int n_points2D = q2D.n_points();    _points.resize  (n_points1D * n_points2D);  _weights.resize (n_points1D * n_points2D);  unsigned int qp=0;    for (unsigned int j=0; j<n_points1D; j++)    for (unsigned int i=0; i<n_points2D; i++)      {	_points[qp](0) = q2D.qp(i)(0);	_points[qp](1) = q2D.qp(i)(1);	_points[qp](2) = q1D.qp(j)(0);	_weights[qp] = q2D.w(i) * q1D.w(j);	qp++;      }  }void QBase::tensor_product_tet(const QBase& gauss1D, const QBase& jacA1D, const QBase& jacB1D){  // All rules should be of the same order  libmesh_assert(gauss1D.n_points() == jacA1D.n_points());  libmesh_assert(jacA1D.n_points()  == jacB1D.n_points());    // Save the number of points as a convenient variable  const unsigned int n_points = gauss1D.n_points();    // All rules should be between x=0 and x=1  libmesh_assert(gauss1D.qp(0)(0) >= 0.0); libmesh_assert(gauss1D.qp(n_points-1)(0) <= 1.0);  libmesh_assert(jacA1D.qp(0)(0)  >= 0.0); libmesh_assert(jacA1D.qp(n_points-1)(0)  <= 1.0);  libmesh_assert(jacB1D.qp(0)(0)  >= 0.0); libmesh_assert(jacB1D.qp(n_points-1)(0)  <= 1.0);  // Resize the points and weights vectors  _points.resize(n_points * n_points * n_points);  _weights.resize(n_points * n_points * n_points);  // Compute the conical product  unsigned int gp = 0;  for (unsigned int i=0; i<n_points; i++)    for (unsigned int j=0; j<n_points; j++)      for (unsigned int k=0; k<n_points; k++)      {	_points[gp](0) = jacB1D.qp(k)(0);                                                  //t[k];	_points[gp](1) = jacA1D.qp(j)(0)  * (1.-jacB1D.qp(k)(0));                         //s[j]*(1.-t[k]);	_points[gp](2) = gauss1D.qp(i)(0) * (1.-jacA1D.qp(j)(0)) * (1.-jacB1D.qp(k)(0)); //r[i]*(1.-s[j])*(1.-t[k]);	_weights[gp]   = gauss1D.w(i)     * jacA1D.w(j)          * jacB1D.w(k);          //A[i]*B[j]*C[k];	gp++;      }}std::ostream& operator << (std::ostream& os, const QBase& q){  q.print_info(os);  return os;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲与欧洲av电影| 久久精品日产第一区二区三区高清版| 国产精品少妇自拍| 国产91丝袜在线播放九色| 久久久久国产精品厨房| 国产1区2区3区精品美女| 国产精品久久看| 久久噜噜亚洲综合| 成人永久看片免费视频天堂| 亚洲少妇中出一区| 欧美日韩国产成人在线免费| 蓝色福利精品导航| 国产欧美日韩卡一| 色妞www精品视频| 五月婷婷激情综合| 精品国产电影一区二区| www.99精品| 五月激情综合色| 久久精品一区二区三区不卡牛牛 | 日本一区二区久久| 91年精品国产| 日本女优在线视频一区二区| 国产视频亚洲色图| 在线观看av不卡| 精品亚洲国产成人av制服丝袜| 久久精品人人做人人爽97| 色诱视频网站一区| 国内精品视频666| 亚洲美女一区二区三区| 日韩美女视频一区二区在线观看| 成人自拍视频在线| 美国一区二区三区在线播放| 国产精品国产三级国产a | 蜜臀av一级做a爰片久久| 久久综合色天天久久综合图片| 99视频有精品| 麻豆91在线播放| 亚洲伦在线观看| 久久亚洲精精品中文字幕早川悠里 | 国产乱国产乱300精品| 一级特黄大欧美久久久| 亚洲精品在线三区| 欧美私模裸体表演在线观看| 国产成人精品免费网站| 日韩电影在线免费看| 亚洲日本电影在线| 久久精品男人天堂av| 欧美色窝79yyyycom| 成人毛片老司机大片| 裸体歌舞表演一区二区| 亚洲午夜三级在线| 国产精品久久综合| 久久亚洲精品小早川怜子| 7777精品久久久大香线蕉| 91毛片在线观看| 丁香五精品蜜臀久久久久99网站 | 又紧又大又爽精品一区二区| 国产日韩在线不卡| 欧美精品一区二区三区在线| 欧美日韩在线一区二区| 色美美综合视频| 91在线观看免费视频| 大胆欧美人体老妇| 成人免费毛片嘿嘿连载视频| 国产主播一区二区| 国产资源在线一区| 正在播放亚洲一区| 欧美视频一区在线| 在线观看91精品国产入口| 91亚洲男人天堂| 91免费观看视频| 一本一本大道香蕉久在线精品 | 亚洲精选免费视频| 亚洲欧美综合在线精品| 国产精品麻豆99久久久久久| 久久嫩草精品久久久精品一| 日韩色视频在线观看| 日韩一区二区免费在线电影| 3751色影院一区二区三区| 在线综合亚洲欧美在线视频| 91精品国产乱| 精品欧美久久久| 久久一二三国产| 国产欧美日韩另类一区| 中文字幕亚洲一区二区av在线 | 欧美精品久久天天躁| 3d动漫精品啪啪一区二区竹菊| 欧美日韩不卡一区| 在线播放91灌醉迷j高跟美女| 制服丝袜在线91| 精品久久国产字幕高潮| 久久精品视频在线看| 国产精品成人网| 亚洲午夜精品一区二区三区他趣| 亚洲高清中文字幕| 精品一区二区三区不卡| 国产成人av资源| 色婷婷香蕉在线一区二区| 在线成人高清不卡| 亚洲观看高清完整版在线观看 | 久久人人97超碰com| 亚洲国产高清aⅴ视频| 亚洲三级小视频| 亚洲电影一级黄| 激情亚洲综合在线| 成人久久视频在线观看| 在线亚洲一区观看| 精品乱码亚洲一区二区不卡| 欧美激情一区二区三区蜜桃视频| **网站欧美大片在线观看| 亚洲成人高清在线| 国产一区二区三区香蕉| 色综合久久66| 日韩欧美的一区| 国产精品久久久久国产精品日日 | 免费成人你懂的| 国产91精品免费| 欧美日韩免费观看一区二区三区| www国产成人| 亚洲黄色av一区| 国产一区二区三区在线看麻豆| 色婷婷综合在线| 国产亚洲欧美日韩在线一区| 亚洲一区视频在线| 国模少妇一区二区三区| 91极品视觉盛宴| 久久亚洲一区二区三区明星换脸| √…a在线天堂一区| 国产毛片精品一区| 欧美日韩亚洲高清一区二区| 日本va欧美va精品发布| 99re热视频这里只精品| 日韩一级精品视频在线观看| 一区二区三区在线视频观看| 国产精品一区二区三区四区| 欧美三级中文字幕| 亚洲视频免费看| 国产.欧美.日韩| 精品国精品国产尤物美女| 亚洲二区在线观看| 91在线观看美女| 中文字幕二三区不卡| 韩国女主播一区二区三区| 欧美精品免费视频| 夜夜嗨av一区二区三区四季av | 91碰在线视频| 国产精品美女久久久久久2018| 日本美女一区二区三区视频| 在线观看日韩国产| 亚洲三级在线免费观看| 岛国一区二区三区| 国产欧美一区二区三区在线看蜜臀| 美女视频黄久久| 制服丝袜中文字幕亚洲| 丝袜美腿亚洲色图| 欧美午夜电影在线播放| 亚洲综合无码一区二区| 91久久线看在观草草青青| 国产精品伦理在线| 成+人+亚洲+综合天堂| 久久精品无码一区二区三区| 国产在线视视频有精品| 欧美精品一区二区三区高清aⅴ| 日本成人中文字幕在线视频| 在线不卡免费欧美| 日韩成人午夜精品| 91精品国产欧美一区二区18| 日日摸夜夜添夜夜添亚洲女人| 日本道免费精品一区二区三区| 亚洲婷婷在线视频| 99精品国产视频| 亚洲免费大片在线观看| 在线一区二区三区| 亚洲国产美国国产综合一区二区| 在线观看免费成人| 午夜电影网一区| 欧美成人精品1314www| 国产老妇另类xxxxx| 国产精品美女久久久久久久| 91一区二区在线| 亚洲一二三级电影| 91.麻豆视频| 国产精品一二三在| 成人免费小视频| 欧美亚洲综合另类| 日本不卡一二三区黄网| 精品久久一二三区| 99久久精品国产毛片| 亚洲国产日日夜夜| 日韩视频在线一区二区| 国产精品亚洲午夜一区二区三区 | 欧美一区二区在线免费播放| 精品一区二区久久久| 欧美韩国日本不卡| 91久久精品网| 青草国产精品久久久久久| 国产精品丝袜久久久久久app| 中文文精品字幕一区二区| 色香蕉成人二区免费| 美国av一区二区|