首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Fortran 90中使用模块内部子程序

在Fortran 90中,可以使用模块内部子程序来实现模块内部的功能封装和代码复用。模块内部子程序是指在模块中定义的子程序,只能在该模块内部被调用,不能被其他模块或程序直接调用。

模块内部子程序的定义方式与普通的子程序类似,但需要在子程序前面加上关键字"CONTAINS",表示该子程序是模块内部的子程序。模块内部子程序可以访问模块中定义的所有变量和常量,包括私有变量和公共变量。

使用模块内部子程序的优势有:

  1. 封装性:模块内部子程序可以将一些功能封装在模块内部,提高代码的可读性和可维护性。
  2. 代码复用:模块内部子程序可以在模块内部被多次调用,实现代码的复用,避免重复编写相同的代码。
  3. 数据共享:模块内部子程序可以访问模块中定义的所有变量和常量,方便数据的共享和传递。

模块内部子程序的应用场景包括但不限于:

  1. 封装复杂的计算逻辑:将复杂的计算逻辑封装在模块内部子程序中,提高代码的可读性和可维护性。
  2. 实现特定功能的子程序:将一些特定功能的子程序封装在模块内部,方便其他程序调用。
  3. 数据处理和转换:对模块内部的数据进行处理和转换的操作可以封装在模块内部子程序中。

腾讯云相关产品和产品介绍链接地址: 腾讯云提供了丰富的云计算产品和服务,包括云服务器、云数据库、云存储等。以下是一些与Fortran 90开发相关的腾讯云产品和产品介绍链接地址:

  1. 云服务器(CVM):提供弹性计算能力,支持多种操作系统和编程语言。产品介绍链接
  2. 云数据库MySQL版(CDB):提供稳定可靠的云数据库服务,支持高性能的数据存储和访问。产品介绍链接
  3. 云存储(COS):提供安全可靠的对象存储服务,适用于存储和管理各种类型的数据。产品介绍链接

请注意,以上只是腾讯云提供的一些与Fortran 90开发相关的产品和服务,还有其他更多的产品和服务可供选择。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【阿信子程序学习笔记(2)】什么是ABAQUS子程序

如题,解释ABAQUS子程序是什么东东之前,需要明确几个问题: 什么是FORTRAN语言? 什么是FORTRAN程序? 什么是FORTRAN子程序? 什么是ABAQUS子程序?...FORTRAN语言是世界上第一个被正式推广使用的高级语言。它是1954年被提出来的,1956年开始正式使用,直到2014年已有六十年的历史,但仍历久不衰,它始终是数值计算领域所使用的主要语言。...什么是FORTRAN程序? FORTRAN程序一般包含主程序和若干程序模块,这些程序模块可以是子程序也可以是函数等类型。 什么是FORTRAN子程序?...通俗的讲,子程序是可以被主程序调用的模块,或者说过程,以SUBROURTINE语句开始,END语句结束。 什么是ABAQUS子程序?...因此可看作是FORTRAN子程序的子集。如下图所示。

1.3K20

git公司内部使用实践

搜索git使用方法是发现这篇文章,几经搜索终于找到原作者的博客,找到了原文,现在分享给大家,希望能够普及git的使用。...以下: 从2011.10月左右,开始在后台组推行git版本控制,到现在也差不多半年了,也形成了一套基于git flow的副官模式工作流程: 版本定义 版本号使用x.x.x进行定义,第一个x代表大版本只有项目有重大变更时更新...master和develop并且生成tag; feature是私有分支,用于开发新需求和需要较长时间的BUG修改 release是提测分支也即常规分支,测试并且bug修改结束后生成该版本tag,后续可以使用...热修复分支下修改bug 5. git push origin hfx.x(修改完成,提交分支) 6....提交代码时还要注意判断对代码的修改是否是自己的,多用diff工具,多查看log,防止代码回溯。 原作者:zeroq.me

54020

__dirname ES模块中的使用

Node.js中越来越多的库逐渐从从CommonJS转移到ES模块 注:这里是指“真”ES 模块并不是指代码中 Node.js 中使用 import 写法但是实际被 tsc 转成 commonJS...不过这个问题在最近也已经解决 结论 ES模块中,现在可以使用以下方式而不是使用__dirname或__filename import.meta.dirname // 当前模块的目录名 (__dirname...旧的 ES 模块方式 __dirname和__filenameES模块中不可用。...Node.js流行起来后开始服务器上运行JavaScript,但必须使用一些约定来加载模块,Node.js项目早期做出的一个选择是采用CommonJS模块系统及其相关内容 ES模块是为浏览器和服务器环境设计的...URL 而不是字符串 大多数的代码可能都是需要使用路径字符串来Node.js中执行常见的文件操作。

11210

Vue 对象模块内如何使用 this 对象?

但是,这样使用 this 必须小心翼翼,稍有不慎就可能出现难以查找的异常。所以最好的对象模块开发规范是,不使用 this 关键字。...这里指对象模块,默认导出是一个全局的对象这种场景;如果是导出 Class,类方法中访问类属性,是必使用 this 关键字的。...,可以这样链式调用: api.cef.startPreview() startPreview函数内部,访问 videoIsOpen 不需要 this 关键字。...在外界使用 api.cef.videoIsOpen 这样的方式访问只读属性,模块文件内部,直接使用 videoIsOpen 读写变量。访问的是同一个标识符。...Q/A 回调中如何保证 this 对象的正确指向? 使用bind方法,在上面已经使用过了。

2.6K20

git 子模块项目中的使用

公司的项目中, 经常会遇到一些公共的内容, 多个项目中间通用的, 不可能每次都将整个代码复制一遍, 遇到这种情况有很多不同的解决方案, 一般来说, 项目是通过 git 来管理的, 巧了, git 也同样支持子模块...创建子模块 git submodule add git@gitee.com:hujingnb/submodule_son.git submodule_son 指定子项目地址, 后面的参数可以更改子模块的路径...: git clone --recursive xxxx.git 子模块操作 对于子模块的更新,提交等操作, 进入对应路径, 正常操作即可....问题 以上对于子模块使用, 网上有各种教程, 在此不再赘述. 而我使用中遇到的问题是这样的: 公司的代码库分为测试环境与生产环境两个分支: dev, master....先说一下我是如何制造冲突的: 父项目与子模块分别拉取分支: master_tmp 父项目与子模块切回master分支 子模块修改文件并提交, 父项目更新commit id 此时父子都回到master_tmp

1.1K30

【阿信子程序学习笔记(4)】ABAQUS子程序该用哪个FORTRAN版本,77?90?95?

FORTRAN语言发展至今已经推出了若干版本,那么究竟采用哪个版本来编写ABAQUS子程序呢?...这是困扰很多同学的问题,因为我们能买的FORTRAN教材基本都是讲解的FORTRAN90/95以上的版本。但是直接采用90或者95以上的版本编写子程序,ABAQUS却又不能识别。...这里需要说明一点,ABAQUS原生支持的FORTRAN77的语法形式,因此采用77写子程序肯定是没有问题的,但是实际上更高级的比如90也是能够支持的,需要对.env文件进行修改,加入支持90的语句即可。...因此无需特别高级FORTRAN版本就能够实现子程序的编写,换个角度想想,很多计算力学的理论早已在有限元软件中实现,那时候有如今高版本的FORTRAN语言吗?...另外,高版本的FORTRAN包含了低版本的所有语法形式和函数,因此从应用的角度讲,没必要花费太多的时间去学习FORTRAN语言,只需要掌握最基本的语法和函数即可,更多的是需要自己实际的编写中锻炼编程技术

1.1K20

【阿信子程序学习笔记(1)】关于FORTRAN与ABAQUS关联

接下来的一段时间,本公众号着重推出子程序和Python二次开发相关的文章。...(配图与文章内容无关,随意找的) FORTRAN编译器与ABAQUS求解器之间的关联,就是大家通常所说的如何关联子程序,一直为很多刚接触子程序的朋友所困惑,网上也有很多帖子总结了关联的方法,但是仍然有很多朋友出现无法关联成功的问题...根据阿信的经验,给出几点关键的建议: (1)首先启动电脑的管理员账户(Administrator)进行ABAQUS软件的安装,这是关键的一环,因为访客账户安装的ABAQUS会出现关联失败的情况。...(2)选择合适的ivs和FORTRAN版本,具体版本请百度,很多文章有总结,不再复述 (3)最核心的一点,关联FORTRAN,实际上给ABAQUS求解器提供一个FORTRAN子程序的编译环境,只要能首先启动...FORTRAN编译器然后再启动ABAQUS就可以运行需要子程序的计算模型了,有心的朋友可以领悟一下其中道理。

88240

如何在Fortran中调用Python

2003内部定义的和C语言类型互通的模块iso_c_binding。...但使用CFFI时,我们不需要写任何C代码,CFFI会生成C类型的打包接口。下一行则定义了一个C函数hello_world接口,这可以C语言中实现,但是这里我们使用Python和CFFI。...你可以直接在不同的Python模块中定义Python代码(比如my_module.py),然后module字符串的开头导入即可。比如,builder.py可以改为如下形式: ......这将在Python中使用可导入的形式使用Python程序。添加到Fortran中之前,你也可以通过python -c "import my_module"测试一下。...•首先,必须在header.h中进行C头文件声明•然后,执行函数必须要在builder.py的module字符串中,或一个外部模块中•最后,Fortran代码中必须包含定义子程序的interface块(

5.8K40

fortran中的数组

接下来是Fortran的数组,我认为这是Fortran语言最有价值的精华部分,因此特意放在了学习笔记靠后的部分,在学习了基本的语法和子程序等之后。...可以使用其他语法进行数组的声明,Fortran 77中没有双冒号,而且需要两条命令分别确定数组元素的类型和数组的尺寸。 ! 基本的用法 integer :: a(10) !...声明一个二维数组b, 尺寸待定 源代码的声明部分不需要明确数组的尺寸,源代码的运算部分使用该数组之前,使用allocate命令明确数组尺寸,分配相应的内存。...或者直接deallocate(a) 固定尺寸的数组和动态数组的本质区别,就像c/c++中的一样:固定尺寸的数组栈上分配内存,不需要手动释放;动态数组堆上分配内存,需要手动释放,相比于栈可使用的空间更多...对大规模的数据存储需求,倾向于主程序中使用动态数组,由主程序负责分配和释放。 注:之前的笔记遗漏了一部分——显式指定参数,以改变多个参数的匹配顺序。

40910

Python 中使用 Arcade 模块创建雪效果

本教程中,您将学习如何使用街机模块实现雪景效果。 您可以游戏中使用它来创建细雨或雨滴效果。您甚至可以继续将其设置为屏幕超时效果。 话虽如此,让我们开始吧!...开始 本教程中,我们将使用街机模块来帮助用户轻松创建与游戏相关的功能。 此模块未预装在 Python 中。这意味着我们将使用 pip 包管理器来安装它。 为此,请使用以下命令。...使用街机模块创建雪景效果 我们需要导入随机和数学模块以及街机模块。你很快就会明白为什么。...现在,我们需要开始输出窗口上处理雪花下落的模式。 首先,我们定义使用街机模块绘制输出屏幕的基本功能。...Python 中的 Arcade 模块 GUI 输出屏幕上创建雪教程效果。

16210

功能模块使用导航 | MAD Skills

概述 上一篇文章 中,您已经学会了如何在多模块工程中使用导航 (Navigation)。本文中,我们将更进一步,将咖啡模块转换成功能模块 (Feature Module)。...如果对功能模块不太熟悉,您可以先查看这个 视频 内容。 功能模块安装时并未下载到本地,而是当应用使用到某个功能时才会下载相应的功能模块。...功能模块 由于我 上一篇文章 中已经将 DonutTracker 应用进行了模块化,我会从将现有的咖啡模块转换成功能模块开始。...' 接着,我 AndroidManifest.xml 中将咖啡模块声明为按需 (on-demand) 模块: <?...现在我将使用 bundletool 来测试功能模块,您也可以使用 Play 控制台来测试功能模块

54010

Java中,匿名内部开发中的使用以及匿名内部类的面试题

匿名内部开发中的使用   我们开发的时候,会看到抽象类,或者接口作为方法的形式参数。   而这个时候,我们知道实际需要的是一个子类的对象。...如果该方法仅仅调用一次,我们就可以使用匿名内部类的格式进行简化。   Android开发中这种格式见得多,   JavaEE开发中见得少。 为什么呢?...因为匿名内部类的好处是:     匿名内部类用完之后就是垃圾(即只能用一次),就可以立即被垃圾回收器回收,     栈内存没有东西指向你,Android的手机内存小,要及时让这个对象被回收。...示例代码如下: 1 /* 2 匿名内部开发中的使用: 3 Android开发中这种格式见得多, 4 JavaEE开发中见得少。...pd.method(p); 39 System.out.println("--------------------"); 40 41 //法二:匿名内部开发中的使用

1.4K20

Html中使用Requirejs进行模块化开发

在前端模块化的时候,不仅仅是js需要进行模块化管理,html有时候也需要模块化管理。这里就介绍下如何通过requirejs,实现html代码的模块化开发。...如何使用requirejs加载html Reuqirejs有一个text的插件,它可以读取指定文件的内容,读取到的内容就是文本。...如何使用text 目标模块中,按照下面的语法即可: define(function(require){ var html = require("text!...看过上面你已经会使用text了,但是仍然不知道怎么组织前端代码。 举个栗子: 博客园的网站页面会根据上方的导航跳转到不同的页面。...如果是单页面中,很容易想到原始的做法是,导航的按钮对应不同的div,点击那个按钮,就显示与之对应的div;其他的div则隐藏掉。

1.4K100
领券