当前位置:首页>python>《码上仿真:Abaqus Python API》Vol.17 Substructure 把航母浓缩成一颗“像素”

《码上仿真:Abaqus Python API》Vol.17 Substructure 把航母浓缩成一颗“像素”

  • 2026-07-01 11:36:33
《码上仿真:Abaqus Python API》Vol.17 Substructure 把航母浓缩成一颗“像素”

在有限元分析中,"细节"往往是算力的天敌。如果你正在算一个巨大的结构(比如高层建筑或航空母舰),而其中90%的区域其实只是处在简单的线性变形阶段,那么重复计算这些区域的刚度矩阵就是极大的浪费。

想象这样一个场景:你正在分析一架完整的客机,机身、机翼、尾翼、发动机舱,每个部分都有数百万个单元。但在大多数工况下,机翼内部的应力分布遵循简单的线性弹性规律,其变形模式相对稳定。然而,传统的有限元方法要求你在每一次迭代、每一个载荷步中都重新求解整个系统的刚度方程,包括那些行为完全可以预测的"老实"区域。

这种"一视同仁"的计算方式带来了巨大的资源浪费:

  • 内存占用:整个模型的刚度矩阵可能占用数十GB内存

  • 计算时间:每次矩阵求解都需要数小时甚至数天

  • 存储需求:结果文件庞大,后处理困难

  • 参数化困难:设计变更时需要重新计算整个模型

这时候,子结构(Substructure)技术就派上用场地了。它能把那些复杂的、线性不变的部件"打包"成一个单一的"超单元"。在主模型看来,这个原本拥有几百万自由度的部件,现在只剩下几个连接点。

子结构技术的核心思想源于结构力学中的静态凝聚(Static Condensation)方法。这一方法最早由结构工程师们在20世纪60年代提出,用于简化大型结构的分析。其数学本质是通过高斯消元,将内部自由度从平衡方程中消去,只保留界面自由度,从而大幅缩减问题规模。

这就像是把一个10GB的原始文件夹压成了一个10KB的快捷方式——功能(刚度)还在,但体积(计算量)瞬间消失。更重要的是,这个"压缩包"可以被重复使用:如果你正在设计一个由多个相同部件组成的结构(如多跨桥梁、阵列天线),只需要生成一次子结构,就可以在装配体中引用任意多次。Abaqus提供了完整的子结构生成和恢复功能,通过Python脚本可以灵活地控制这一过程。

1. 提炼灵魂:retainedNodes(保留节点)

在创建一个SubstructureGenerateStep时,最重要的参数是指定哪些点是"对外窗口":

mdb.models['Model-1'].SubstructureGenerateStep(    name='Generate-Substructure',    previous='Initial',    description='Create super-element from wing component')# 指定保留节点retained_region = mdb.models['Model-1'].rootAssembly.instances['Part-1'].sets['Interface-Nodes']mdb.models['Model-1'].RetainedNodalDofs(    name='Retained-DOFs',    region=retained_region,    u1=ON, u2=ON, u3=ON,  # 保留平动自由度    ur1=ON, ur2=ON, ur3=ON  # 保留转动自由度(如需要))

除了你选中的这些"保留节点",子结构内部成千上万个自由度都会被静态凝聚(Static Condensation)掉。

保留节点的选择原则

  • 连接位置:子结构与主结构或其他子结构的连接界面

  • 载荷作用点:外部载荷施加的位置

  • 约束位置:边界条件施加的位置

  • 关心位置:需要输出结果的关键位置

2. "复原魔法":recoveryMatrix(恢复矩阵)

默认情况下,子结构只输出保留节点的响应。有时候,我们不仅想知道整体动向,还想在算完之后"回头看"子结构内部的应力分布。使用参数`recoveryMatrix=ON`,开启子结构的恢复矩阵:

mdb.models['Model-1'].SubstructureGenerateStep(    name='Generate-Substructure',    previous='Initial',    recoveryMatrix=ON  # 只有开启它,后期才能“解压”出内部应力)

开启这个API开关,Abaqus就会偷偷记下压缩时的缩减比例。等整体算完了,它可以像解压文件一样,把子结构内部的详细云图重新"变"出来。

如果你的后续分析涉及振动、频率或冲击(动力学),千万别忘了提取质量矩阵:

# 在 Step 定义中增加model.steps['Generate-Substructure'].setValues(massMatrix=ON)

通过恢复矩阵,可以在后处理阶段重建子结构内部的完整位移场和应力场:

# 在后处理中恢复子结构内部结果from odbAccess import *# 1. 打开结果文件odb = openOdb(path='Job-1.odb')# 2. 锁定最后一帧last_frame = odb.steps['Step-1'].frames[-1]# 3. 提取保留节点(对外窗口)的位移retained_nodes = odb.rootAssembly.nodeSets['RETAINED-NODES']u_output = last_frame.fieldOutputs['U']retained_disp = u_output.getSubset(region=retained_nodes)# 4. 关键:提取子结构内部(Internal)的应力或位移# 假设你的子结构实例名为 'SUB-PART-1'try:    sub_instance = odb.rootAssembly.instances['SUB-PART-1']    internal_stress = last_frame.fieldOutputs['S'].getSubset(region=sub_instance)    print("已成功提取子结构内部应力场")except:    print("无法提取内部结果,请检查生成时是否开启了 recoveryMatrix")odb.close()
3. 灵活克隆:abaqus substructurecombine

在之前的小节中,我们讨论了子结构的“封装”和“复原”。

在大型工程项目中(比如模拟一架飞机),不同的部门可能会分别生成机翼、起落架、尾翼的子结构(.sim)。如果你不想在主模型的文件夹里堆满几十个 .sim 文件,可以使用 abaqus substructurecombine 命令,将它们“打包”成一个单一的库文件。这极大地简化了主模型(Input 文件)的引用逻辑,让项目管理变得井然有序。

有时候,你手头的子结构是几年前用旧版 Abaqus 生成的,而主模型是在最新版里运行。abaqus substructurecombine 命令具备翻译(Translation)功能。它可以读取旧版本的子结构数据,并将其转换为当前版本能够识别的格式,确保你的数字资产不会因为软件升级而失效。

如果你有 part_A.sim 和 part_B.sim,想把它们合体:

# 命令行组合子结构abaqus substructurecombine job=MyLibrary substructure=part_A.sim, part_B.sim

执行后,你会得到一个名为 MyLibrary.sim 的文件,里面包含了 A 和 B 的所有刚度、质量及恢复矩阵数据。

4.实战代码:执笔"浓缩"脚本

在Python中定义一个子结构生成分析步,你需要指挥零件进行"自我升华":

from abaqus import *from abaqusConstants import *# 1. 创建子结构生成步# 假设我们正在处理一个庞大的'机翼'部件mdb.models['Model-1'].SubstructureGenerateStep(    name='Condensing_Wing',     previous='Initial',     description='Condense the wing into a super-element')# 2. 指定保留自由度(通常是连接部位的节点)# 我们选择机翼与机身连接的螺栓孔位置retained_region = mdb.models['Model-1'].rootAssembly.instances['Wing-1'].sets['Attachment_Nodes']mdb.models['Model-1'].RetainedNodalDofs(    name='Interface',     region=retained_region,     u1=ON, u2=ON, u3=ON  # 保留三个平动自由度)

完整工程案例:飞机机翼子结构分析

def create_wing_substructure():    """    创建飞机机翼子结构    将复杂机翼模型压缩为超单元,用于整机装配分析    """    model = mdb.Model(name='Wing-Substructure-Model')    # 导入机翼几何(假设已完成网格划分)    # ... 几何导入和网格划分代码 ...    # 创建材料(线性弹性,适合子结构)    material = model.Material(name='Aluminum-2024')    material.Elastic(table=((73000.0, 0.33),))  # E=73GPa, nu=0.33    material.Density(table=((2.78e-9,),))  # 密度    # 创建截面属性    section = model.HomogeneousSolidSection(        name='Wing-Section',        material='Aluminum-2024'    )    # 赋予截面属性    wing_part = model.parts['Wing']    region = wing_part.Set(cells=wing_part.cells[:], name='All-Cells')    wing_part.SectionAssignment(        region=region,        sectionName='Wing-Section'    )    # 创建装配体    assembly = model.rootAssembly    instance = assembly.Instance(name='Wing-1', part=wing_part, dependent=ON)    # 定义保留节点集合(机翼与机身连接点)    # 假设连接点位于机翼根部    root_nodes = instance.nodes.getByBoundingBox(zMin=-0.1, zMax=0.1)    assembly.Set(nodes=root_nodes, name='Root-Interface')    # 创建子结构生成步    model.SubstructureGenerateStep(        name='Generate-Wing-Substructure',        previous='Initial',        description='Generate super-element for wing component',        recoveryMatrix=ON,  # 启用恢复矩阵        computeLoadCaseResults=ON,  # 计算载荷工况结果        computeMassProperties=ON,   # 计算质量属性        computeStructuralDamping=ON  # 计算结构阻尼    )    # 指定保留自由度    model.RetainedNodalDofs(        name='Wing-Root-DOFs',        region=assembly.sets['Root-Interface'],        u1=ON, u2=ON, u3=ON,   # 保留所有平动自由度        ur1=ON, ur2=ON, ur3=ON  # 保留所有转动自由度    )    # 创建作业并提交    job = mdb.Job(        name='Wing-Substructure-Job',        model='Wing-Substructure-Model',        description='Generate wing substructure'    )    job.submit()    job.waitForCompletion()    print("机翼子结构生成完成!")    print("子结构文件:Wing-Substructure-Job.sim")

子结构在整机分析中的应用

def create_full_aircraft_model():    """    创建整机分析模型,引用机翼子结构    """    model = mdb.Model(name='Full-Aircraft-Model')    # 创建机身模型(主结构)    # ... 机身建模代码 ...    # 引用机翼子结构(左右机翼各引用一次)    # 注意:实际使用时通过*SUBSTRUCTURE LOAD或类似方式引用    # 创建分析步    model.StaticStep(        name='Flight-Load',        previous='Initial',        nlgeom=OFF  # 子结构仅适用于线性分析    )    # 施加载荷(气动载荷、重力等)    # ... 载荷施加代码 ...    # 求解整机模型    # 子结构的刚度矩阵被自动组装到整体刚度矩阵中    print("整机模型创建完成,包含机翼子结构!")

参数化子结构分析

def parametric_substructure_analysis(param_dict):    """    参数化子结构分析    用于设计优化,快速评估不同参数下的结构响应    参数:        param_dict: 包含设计参数的字典            - thickness: 壁厚            - stiffener_spacing: 加强筋间距            - material: 材料名称    """    model_name = f"Substructure-Param-{param_dict['thickness']}"    model = mdb.Model(name=model_name)    # 根据参数更新几何    # ... 参数化几何建模代码 ...    # 生成子结构    model.SubstructureGenerateStep(        name='Generate',        previous='Initial',        recoveryMatrix=ON    )    # 指定保留节点    # ... 保留节点设置代码 ...    # 提交作业    job_name = f"Job-{model_name}"    job = mdb.Job(name=job_name, model=model_name)    job.submit()    job.waitForCompletion()    # 提取结果用于优化    odb = openOdb(path=f'{job_name}.odb')    # ... 结果提取代码 ...    odb.close()    return results

注意事项

  • 子结构只能用于线性区域! 如果你的部件会发生大变形、屈服或者复杂的接触,千万不要把它做成子结构,否则结果会错得离谱。子结构基于线性假设,其刚度矩阵在生成后固定不变,无法捕捉材料非线性或几何非线性行为。

  • 它是线性扰动步(Linear Perturbation)的好搭档。 子结构特别适合于模态分析、频响分析等线性扰动分析,可以大幅缩减特征值问题的规模。

  • 保留节点数量要适中。 保留节点太少会导致子结构无法准确传递力和位移;太多则失去降维的意义。一般原则是保留所有与外部有交互的节点。

  • 质量矩阵处理。 子结构生成时会自动处理质量矩阵,确保动力分析中的惯性特性正确。

高级应用技巧速览

子结构技术在工程实践中衍生出多种高级应用策略:

  • 多级子结构(俄罗斯套娃式降维):将超大型结构按层级逐级压缩(如整机→机翼→内外翼段),可将数百万自由度缩减至数千,实现计算规模的指数级压缩。

  • 子结构库建立与复用:为系列产品建立标准件子结构库,存储各部件的刚度矩阵、质量属性及接口节点信息,在新设计中通过简单装配即可快速构建模型,大幅提升设计迭代效率。

  • 敏感性分析加速:将非设计区域封装为子结构,仅保留设计区域为可修改的详细模型,在参数扫描时只需重算小规模模型,特别适合设计优化与参数研究。

这些技巧共同指向一个核心理念:识别系统主干,封装繁琐细节,在精度与效率间取得最优平衡。

总结

在Abaqus脚本建模中,Substructure是对"暴力计算"的一种降维打击。

子结构技术的工程价值

  • 计算效率提升:将数百万自由度的模型压缩到数千甚至数百个自由度,求解时间从数天缩短到数分钟。

  • 设计迭代加速:在概念设计阶段,可以快速评估不同布局方案;在详细设计阶段,可以专注于关键部件的优化。

  • 知识复用:标准件、通用部件的子结构可以建立库,在新项目中直接引用,避免重复建模。

  • 协同设计:不同团队可以分别负责不同子结构的建模和验证,最后通过接口集成。

  • 知识产权保护:子结构文件只包含接口信息,内部细节被"封装",便于供应链协作。

真正的高手,不会试图去算清宇宙中的每一个原子。我们要学会识别系统的"主干",把繁琐的细节封装进简洁的接口里。这种从"繁枝末节"到"精炼模型"的跨越,正是有限元分析中最优雅的思维体操。


👉互动话题:在你的模型里,哪个部分最让你头疼?是密密麻麻的螺栓,还是层层叠叠的涂层?有没有想过把它们"打包"成一个子结构?在评论区聊聊你的想法,咱们一起给计算"减减负"

公众号

知识星球

扫码关注

科趣范,让科研更简单

小红书

抖音

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-04 12:41:03 HTTP/2.0 GET : https://f.mffb.com.cn/a/489122.html
  2. 运行时间 : 0.110877s [ 吞吐率:9.02req/s ] 内存消耗:4,377.82kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=f37d38c0382e7d03276c10240ed021e0
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000794s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001087s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000425s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000354s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000627s ]
  6. SELECT * FROM `set` [ RunTime:0.000290s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000610s ]
  8. SELECT * FROM `article` WHERE `id` = 489122 LIMIT 1 [ RunTime:0.000578s ]
  9. UPDATE `article` SET `lasttime` = 1783140063 WHERE `id` = 489122 [ RunTime:0.010097s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000395s ]
  11. SELECT * FROM `article` WHERE `id` < 489122 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000588s ]
  12. SELECT * FROM `article` WHERE `id` > 489122 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.004871s ]
  13. SELECT * FROM `article` WHERE `id` < 489122 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.001159s ]
  14. SELECT * FROM `article` WHERE `id` < 489122 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.007173s ]
  15. SELECT * FROM `article` WHERE `id` < 489122 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.009788s ]
0.112475s