BMesh 逆收缩代码对应解释
构建标量场函数为了演化(逆收缩)
\left(1-\left(\frac{r}{R_{i}}\right)^{2}\right)^{2}, \quad r \leq R_{i} \\
0, \quad r>R_{i}
\end{array}\right.
\]
其中 r^2 就是球函数
\(r^{2}=\left(x-c_{x}^{i}\right)^{2}+\left(y-c_{y}^{i}\right)^{2}+\left(z-c_{z}^{i}\right)^{2}\)
\(R_i=\alpha r_i\) 其中\(r_i\)是球i的半径\((c_x^i, c_y^i, c_z^i)\)是球的中心坐标,\(\alpha\)是1.5应该就是一个系数。
标量场定义为满足下面公式的东西。
\(\mathcal{I}(\boldsymbol{x})=\sum_{i=1}^{n} f_{i}-T=0\)
其中\(T\)是门限参数,门限参数控制着演进网格多接近标量场。一个更大的T降维生成更瘦的结果。
初始的网格图2C,定义为要演化的网格。
具体而言点在表面移动的轨迹被认为时间t的函数x(t)
\]
其中 \(d \boldsymbol{x} / d t\) 认为是速率。\(\boldsymbol{n}=-\nabla \mathcal{I} /|\nabla \mathcal{I}|\)
被认为是法向量,\(\mathcal{I}\) 被认为是标量场。\(\mathcal{F}(\boldsymbol{x}, \boldsymbol{n}, \mathfrak{K}, \mathcal{I}, \cdots)\) 是一个带符号的标量函数(运动速度函数)依赖于标量的属性包括位置和法向量曲率和标量场等等。典型的S(0)是初始化网格。
运动速度函数\(\mathcal{F}\) 被标量场和一个切线水平集决定。公式如下
\]
这公式意味着顶点演化的更快如果它原理切线水平集。区域函数在这个公式中控制着演化速度对不同区域的自适应。
标量场靠近小球会比靠近打球更加密集。在当前的系统中。\(f(\kappa)=1/\left(1+\left|\kappa_{1}\right|+\left|\kappa_{2}\right|\right)\)表现的很好\(\kappa_{1}\) 和 \(\kappa_{2}\)是顶点 \(x\) 的主曲率。
一个顶点\(\boldsymbol{x}(t)\)在当前的网格面S(t)演进如下所示
\]
\(\Delta t\) 是时间间隔防止出现震荡情况,我们限制的迭代的次数。公式从另一篇论文CFL中导出
同时我们限制\(\Delta t\)的最小值
\]
step 定义为
\(step =\min \left\{r_{i}\right\} / 2^{k}\) k是细分次数。最小的step定义为最小的球面半径
即
double step = getMinRadius(root, root->getValue()->radius) / pow(2, subdivisionLevel);
网格演进终止与表面接近标量场。演化工程在接近表面的时候很快。
BMesh 逆收缩代码对应解释的更多相关文章
- 编程算法 - 数组中的逆序对 代码(C)
数组中的逆序对 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 在数组中的两个数字假设前面一个数字大于后面的数字, 则这两个数字组成一个逆序对. ...
- java动态代理实现与原理详细分析(代码层面解释了AOP的实现)
关于Java中的动态代理,我们首先需要了解的是一种常用的设计模式--代理模式,而对于代理,根据创建代理类的时间点,又可以分为静态代理和动态代理. 一.代理模式 代理模式是常用的java设计模式, ...
- [js]js栈内存的全局/私有作用域,代码预解释
js代码如何执行的 浏览器提供执行环境: 全局作用域(提供js执行环境, 栈内存) --> 执行js需要预解释 - 带var : 提前声明 - 带function关键字的: 提前声明+定义 js ...
- C++卷积神经网络实例:tiny_cnn代码具体解释(7)——fully_connected_layer层结构类分析
之前的博文中已经将卷积层.下採样层进行了分析.在这篇博文中我们对最后一个顶层层结构fully_connected_layer类(全连接层)进行分析: 一.卷积神经网路中的全连接层 在卷积神经网络中全连 ...
- 动手动脑之查看String.equals()方法的实现代码及解释
动手动脑 请查看String.equals()方法的实现代码,注意学习其实现方法. 第一个是false,后三个是true. package stringtest; public class Strin ...
- jQuery源代码学习笔记:jQuery.fn.init(selector,context,rootjQuery)代码具体解释
3.1 源代码 init: function( selector, context, rootjQuery ) { var match, elem, ret, doc; // Handle $(&qu ...
- 原代码,反码,解释和具体的补充 Java在>>和>>>差异
前两天分析 HashMap 的 hash 算法的时间,会见 >> 和 >>> 这两个符号.然后检查以下信息,我脑子里在某一时刻.今天遇到,我没想到居然忘 0-0.... ...
- Java实现八种排序算法(代码详细解释)
经过一个多星期的学习.收集.整理,又对数据结构的八大排序算法进行了一个回顾,在测试过程中也遇到了很多问题,解决了很多问题.代码全都是经过小弟运行的,如果有问题,希望能给小弟提出来,共同进步. 参考:数 ...
- 逆卷积的详细解释ConvTranspose2d(fractionally-strided convolutions)
1.首先先定义进行卷积的参数: 输入特征图为高宽一样的Hin*Hin大小的x 卷积核大小kernel_size 步长stride padding填充数(填充0) 输出特征图为Hout*Hout大小的y ...
- HTTP 返回状态代码详细解释
一:1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码. 100(继续)请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分:101(切换协议)请求者已要 ...
随机推荐
- Golang解决fatal error: all goroutines are asleep - deadlock!
今天进行一个协程操作demo时总是报错 //workerpool.go package main import ( "fmt" "time" ) //工作线程 ...
- Argo CD
目录 一.什么是 Argo CD 二.为什么选择 Argo CD 三.Argo CD 架构 1.API服务器 2.存储库服务器 3.应用程序控制器 四.Argo CD 的使用 1.要求 2.安装 Ar ...
- Vue ElementUI 树表格
树表格做懒加载-点击小箭头走接口 children为[]则使用hasChildren的true/false来判断是否有子节点,另,如果要做点击小箭头走接口必须加lazy及load <el-tab ...
- C# 线程基础——用户模式、内核模式
C# 线程基础--用户模式.内核模式 参照:用户模式和内核模式 - Windows drivers | Microsoft Docs 基础概念 运行 Windows 的计算机中的处理器有两个不同模式: ...
- 痞子衡嵌入式:在含多个i.MXRT的主从系统中共享一颗Flash启动的方法与实践(上篇)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是多个i.MXRT共享一颗Flash启动的方法. 有些特殊的客户应用会采用多颗 i.MXRT 芯片设计一主多从的硬件架构(目的不一,或仿多 ...
- C 语言实现抽象数据类型(ADT)之链表
C 语言实现抽象数据类型(ADT)之链表 1 什么是链表?(懂跳) C 语言本身自带了很多基本数据类型,每种基本数据类型的变量总是代表着某个数据,比如:我们通常用整型变量来计数,用浮点型变量来保存价格 ...
- git提示:There is no tracking information for the current branch
问题 使用git pull拉取远程分支代码的时候,提示: > There is no tracking information for the current branch. Please sp ...
- 浅析领域驱动模型VO、DTO、BO、PO 等的概念、区别及其用法
摘要:浅析POJO.DTO.DO.VO.BO.PO和Entity等的概念.区别及其用法. 名词解释 领域模型中的实体类分为四种模型:VO.DTO.DO和PO,各种实体类用于不同业务层次间的交互,并 ...
- 转-Linux iostat命令快速入门
Linux系统出现了性能问题,一般我们可以通过 top.iostat.free.vmstat和ifstat等命令来初步定位问题.其中iostat可以给我们提供丰富的IO性能监控数据. 基本使用 ios ...
- NOIp2020复赛前日志
NOIp2020复赛前日志 组合数和卢卡斯定理 首先写的顺序别搞错了 从\(n\)个不同元素中取出\(m(m≤n)\)个元素的所有组合的个数 \[C_n^m=\binom nm=C(n,m)=\fra ...