Science topic

Fortran - Science topic

Sharing FORTRAN knowledge
Questions related to Fortran
  • asked a question related to Fortran
Question
1 answer
I am going to create a CUTEst environmental for which gfortran8 is needed. Any help is highly appreciated.
Relevant answer
Answer
  • asked a question related to Fortran
Question
3 answers
Hello, I need help getting a code in python or Fortran for elastic stiffness to calculate the shear modulus at varying mean effective stress by the Hardin formula in Abaqus. Can anyone help regarding this, or else from where I can learn to code?
Regards,
Manisha
Relevant answer
Answer
  • asked a question related to Fortran
Question
3 answers
Update:
I found the correct file that correctly compiles but I am still confused on how to "Read" in values to the program from the given text file. Attached below is the correct fortran file. I noticed that every READ command has a * where the filename is supposed to be. Should I replace each of these stars with the location of the sample data before compiling? Or is there some command I can use after compiling to use this text file as input data?
I recently downloaded the LEVEL16 Fortran program posted on Bob LeRoy's website (http://scienide2.uwaterloo.ca/~rleroy/LEVEL16/) and is also accessible in the following github repo (https://github.com/HPQC-LABS/LEVEL), and after reading the program guide, I am still confused on how to actually use the program.
I understand that I need to compile and somehow run it with a Fortran Compiler. I have never used Fortran before and I am not sure if I need to first compile the helper functions. It would be helpful if someone who is experienced in fortran or has previously used this program could walk me through the setup up to running the program on the sample input files. The guide says that it begins by "reading in the values" however, how can I read in values that are in a separate text file? Right now, I am trying to compile 2016LEVEL.f and I do not really know how to do it.
A copy of the sample data is attached below.
Relevant answer
Answer
I found the correct file that correctly compiles but I am still confused on how to "Read" in values to the program from the given text file. Attached below is the correct fortran file.
  • asked a question related to Fortran
Question
2 answers
I want to open, read and write dat files during the simulation in abaqus subroutine code. I need to open the file in Direct Access mode. But when I do format labeling in subroutine code written in Fortran, the code prodiuces the labeling error. Please look the attached screenshot for code the produced error. Appriciate for a help!!
Relevant answer
Answer
Hello. As mentioned by David, the error message does seem to point to a Fortran syntax error in your code. Are you using a ".f" extension on your source code file?
Your Fortran code appears to be written in free-format source form. However, the compiler expects your code to be written in fixed-format source form. This relies on very specific formatting: statement numbers in columns 1-5, continuation characters in column 6, and statement text in columns 7-72. From the snippet of code you posted, it does appear that your Fortran code is being written under the assumption that statements are written in free-format source form. In your case, the FORMAT statement begins before column 7. When free-format code statements are interpreted in the fixed-format source form, they will generally result in quite cryptic-looking syntax error messages.
I am unsure what sort of Fortran source form Abaqus expects, if any. If you wish to continue to write code in free-format source form, then you can usually specify a compile-time option on the command line to explicitly instruct your particular compiler that the file is using free-format source form. Changing the file extension to something like ".f90" or ".f95" may also trigger automatic handling of the file in free-source format.
In any case, take a closer look at the guidance offered by the compiler vendor in the Fortran users manual. That should explain what's going on in greater detail.
  • asked a question related to Fortran
Question
3 answers
Greetings to all.
I am new to UMAT in Abaqus and want to create UMAT for "shell" elements for an isotropic and anisotropic material, can anyone suggest any reference material, book, or website link which can help me.
Thank You
Relevant answer
  • asked a question related to Fortran
Question
3 answers
Anybody knows how to change the density of materiel during a deformation process in a specific strain range, for example (when strain raise from 0.1 to 0.2) using VUMAT ABAQUS subroutine?
Relevant answer
Answer
Martin Veidt : Thank you for your comment, but there is no density dimension in the VUSDFLD subroutine nor Strain.
Based on what dimension density can be changed or assumed?
Can you please explain a bit specifically?
  • asked a question related to Fortran
Question
1 answer
I need the .for file for numerical analysis
Relevant answer
Answer
Dear Sandy J. Chaaban,
You can find the files you are looking for and the tutorials with them in the links below:
Best wishes.
  • asked a question related to Fortran
Question
1 answer
Hello everyone
Hope you're doing great.
I'm trying to learn and implement Abaqus subroutines (particularly USFLD) and am struggling with the following Abaqus terms' meanings and applications:
1. field variables
2. material point (and material point quantities)
would please help me out here with the definitions and examples of the above-mentioned terms since I haven't found any useful website links online.
Best regards,
Yunus.
Relevant answer
Answer
Field variables in abaqus are quantities that are used to perform calculations when running user subroutines. They do not describe a specific
physical quantity but are often used to describe solution dependent material properties.
Integration points are referred as material points to distinguish between the
Langragian and Eulerian approach.
  • asked a question related to Fortran
Question
4 answers
Hello dear Professors, Doctors, Programmers, ...
I am a PhD student and I am working on a hybrid photovoltaic/thermal (PVT) solar collector tilted at a given angle. I'm writing python (or possibly fortran) code that solves equations for heat, vorticity, turbulent energy and dissipation rate in two-dimensional transient, laminar and turbulent regime under python (or possibly Fortran ).
Indeed, the work consists in simulating the conjugate thermal transfers (conduction and convection) and the two-dimensional transitory air flow inside the sensor channel. I would like to ask for your help. If any of you have a copy of this code or a website where I can get this code, help me. Thanks.
Relevant answer
Answer
Here is a neat python recipe regarding solving 2D heat equation numerically:
  • asked a question related to Fortran
Question
4 answers
What are the existing frameworks ?
How do you integrate with existing models trained in TensorFlow / Keras Python ?
Relevant answer
Answer
Fortran is a statically and strongly typed language, making it easier to write correct programs
  • asked a question related to Fortran
Question
1 answer
I'm working in relativistic waves and instabilities in anisotropic MHD plasmas but most of the time I'm facing the numerical aspects of the plotting of the analytical findings. so is there anyone helping me with helpinghow can I get the free source codes in FORTRAN or phyton or is interested to work with me and helps in computational aspects?
Relevant answer
Answer
go to github
  • asked a question related to Fortran
Question
3 answers
In the case of simulation of an iterative process (Let's say we have 30 iterations) in which elements' material properties need to be changed after each iteration based on the results (eg. strain field) of the previous iteration, which method is preferred and why?
linking Abaqus & MATLAB or Abaqus scripting and UMAT subroutines.
Regards,
Yunus.
Relevant answer
Answer
In this case, I highly recommend you use ABAQUS scripting. Because it's more convenient than linking ABAQUS with Matlab, and your run time decreases significantly. In this regard, I suggest you use Micro Manger in ABAQUS to write an ABAQUS script.
  • asked a question related to Fortran
Question
4 answers
Hi
I am trying to use built-in user material subroutine using ABQ_PLY_FABRIC in abaqus. upon running it I get the following message:
"Material ABQ_PLY_FABRIC is not supported as a built-in user material. Please use the correct character string for the name of the user material."
Any ideas why I am getting this message please?
My Abaqus version is 2018 and is also successfully linked with Fortran compiler 2017 and visual studio 2015. In fact all verification process is a PASS.
Relevant answer
Answer
It is a built-in subroutine and everything you need to know is in the attached. Also for full understanding of the process read article below where you will find all the details on how it is done.
Regards
  • asked a question related to Fortran
Question
5 answers
Hello:
I am trying to do a very simple thing that I just can't seem to do in Abaqus!
I know how to create a new text file and write to it any output variables with any desired format I want! That's a relatively easy task in Abaqus.
The hard part is for Abaqus to read from that existing file later on. If I try to write a read command code in fortran (in the same subroutine or inside a different subroutine), Abaqus freezes on me, and nothing gets updated at all!!! I have to, at that point, kill the job!
I really want to create a common block array where I will save a particular array variable that is already available from previous increments in a text file. The problem is, inside none of the subroutines in Abaqus, the read command work successfully!!!
Any ideas?
Please and thank you.
Mousumi Ghosh
Relevant answer
  • asked a question related to Fortran
Question
4 answers
Hey Everyone,
I am running an Abaqus simulation with a subroutine and it terminated itself because of "floating point error". I tried after that running the simulation without the subroutine by giving it a material property, that doesn't require any subroutine. (In my case, the subroutine is for viscosity definition that is dependent on temperature and shear stress). With material property that independent to temperature and shear stress (no subroutine required), the simulation runs smoothly. That's why I think the problem has to be in my subroutine. That's why I would like to run a debugger to my subroutine by following the manual from https://www.ichec.ie/support/tutorials/abaqusdebug.pdf .
Following are my questions:
1. What could be gone wrong in subroutine that leads to "floating point error"? Excuse me, if the answer is obvious, because I have no or less experience with fortran. Following is the subroutine:
subroutine vuviscosity (
C Read only -
* nblock,
* jElem, kIntPt, kLayer, kSecPt,
* stepTime, totalTime, dt, cmname,
* nstatev, nfieldv, nprops,
* props, tempOld, tempNew, fieldOld, fieldNew,
* stateOld,
* shrRate,
C Write only -
* viscosity,
* stateNew )
C
include 'vaba_param.inc'
C
dimension props(nprops),
* tempOld(nblock),
* fieldOld(nblock,nfieldv),
* stateOld(nblock,nstatev),
* shrRate(nblock),
* tempNew(nblock),
* fieldNew(nblock,nfieldv),
* viscosity(nblock),
* stateNew(nblock,nstatev)
C
character*80 cmname
C
parameter ( one = 1.d0)
REAL, DIMENSION(nblock) :: n0, T
C
C VARIABLES
n = 0.2647
Tau = 309343
D1 = 1.68413e+13
D2 = 323.15
A1 = 31.206
A2 = 51.6
C
C Cross-WLF viscosity model
C
do k = 1, nblock
T(k) = tempOld(k) + 273.15
n0(k) = D1 * exp (-(A1 * (T(k) - D2)) / (A2 + T(k) - D2))
viscosity(k) = n0(k) / (one + ((n0(k) * shrRate(k)) / Tau)**(one-n))
end do
C
return
end
2. How could I link the subroutine with a debugger? I don't understand the 2nd step of the manual (login to stokes or stoney on two seperate termials). It would be ideal for debugging purpose, if I could read the values stored in variables for the subroutine.
I really appreciate for any input or advice from Everyone :)
Many regards,
Gunardi
Relevant answer
  • asked a question related to Fortran
Question
8 answers
I have three modules (in free form .f90 format) which are being called from inside of a UMAT subroutine in ABAQUS, in the following manner:
module module_A
use module_C
use module_B
....
end module_A
module module_B
use module_C
....
end module_B
module module_C
....
end module_C
subroutine UMAT(STRESS,...)
....
Here the subroutines from module_A and module_B are being called
...
end subroutine UMAT
Now, what is the appropriate format for writing these modules with UMAT subroutine? How to merge different module files into a single *.for file (free format)?
Relevant answer
  • asked a question related to Fortran
Question
6 answers
HI everyone .please if can someone help me I need a Fortran program to minimize an expression as a function of two parameters variational
Relevant answer
Answer
complete PDF of FORTRAN Function minimizing expression
  • asked a question related to Fortran
Question
15 answers
Which programming language is best for Mathematical simulation- Matlab or Fortran?
Relevant answer
Answer
I think Matlab is good
  • asked a question related to Fortran
Question
1 answer
If the proximate analysis on a dry basis is equal to 100 then how to put the moisture content in our calculations in the FORTRAN calculator because when I convert the dry basis moisture content into wet basis moisture content then the proximate analysis is not equal to 100. it exceeds 100 value.
the following statement is taken from a research article and proximate and ultimate analysis is given in the pic on dry basis. how to describe the moisture content in my FORTRAN calculator.
when the moisture content of MSS increased from 87 wt% to 95 wt%
Relevant answer
Answer
Zeeshan Ul Haq In general, FORTRAN syntax is comparable to that of other programming languages. To enter a code in Aspen Plus, leave 6 spaces before the first character (the first space is left for the letter "C" which indicates a comment line, and the next 5 is used to give the line an identifying number).
  • asked a question related to Fortran
Question
2 answers
I have the proximate and ultimate analysis of biomass and using this, I want to convert it into conventional components using a reactor like Ryield but I'm not able to do this calculation. Can anyone please help me with how to do it?
Thanks & Regards,
Hari Kiran
Relevant answer
Answer
Hello Hari,
In my experience, unfortunatelly, this is a non-straightforward task. You need to implement a subroutine (i.e. calculator block) which performs the mass balance for the "translation" from the nonconventional compound to the biochemical composition (hemicellulose, cellulose and lignin). In any case, such balance is hardly impossible to be perfectly closed, so the problem should more likely be defined as an optimization which minimizes the difference between the elemental contents of the input and output compounds. As this is quite complicated to explain, I suggest that you check the following paper, which I utilized myself to perform the mentioned task.
  • asked a question related to Fortran
Question
1 answer
I'm currently working on "ammonia.apwz" file, from Aspen Plus examples.
In the Rplug reactor used to simulate an ammonia synthesis reactor, two Fortran subroutines are used to compute the raection rates.
When I try to export the file into Aspen Dynamics, the following error i generated:
"TRANSLATING BLOCK R001-A of TYPE RPLUG:
FATAL ERROR: Referenced reaction object NH3SYN uses Subroutine Type=RPlug-Only. This option is not supported in Aspen Plus Dynamics. Modify the subroutine to conform to conventions recommended for Subroutine Type = General."
How should I have to modify the Subroutine to fix the problem?
Thanks.
Relevant answer
Answer
These articles might be helpful, have a look:
Kind Regards
Qamar Ul Islam
  • asked a question related to Fortran
Question
3 answers
For the Fortran program that I build for my fatigue problem, I need to modify the compliance matrix C at each iteration. For that I have on one hand a subroutine UMAT which models the mechanical behavior of the material with the matrix C (implementation of DDSDDE) and on the other hand a subroutine USDFLD which calculates at each iteration the damage D. According to the value of D, the matrix C can change and that at each iteration. For this I have to call the matrix C (or DDSDDE) in the subroutine USDFLD, however DDSDDE is a variable defined only in the subroutine UMAT. How can two subroutines communicate with each other?
Anyone, please help me with that?
Relevant answer
Answer
Camille Le Goff Why do you need to use the USDFLD subroutine? You can access the stiffness and change it in damaged material in UMAT. You can find some examples of how to change the stiffness in damaged material in the following link:
  • asked a question related to Fortran
Question
2 answers
I need to implement a Fortran code using user subroutine in Abaqus for moving heat source model implementing volumetric gaussian laser heat source for multi-track laser scanning. I wrote code for a single track(bead) on a single layer for laser, Even it stopped working for 1 element. Now I need to write code for multi-track on a single layer. I need help regarding this. I didn't even find many resources for it.
AND ONE MORE THING IS SINCE I AM USING A VOLUMETRIC HEAT SOURCE, I SHOULD GIVE THE NAME OF THE VOLUME AS INPUT IN SYNTAX. WHAT SYNTAX IS USED FOR IT(for mentioning surface we use .SNAME=......... so for volume what should we use?)
Relevant answer
Answer
Jack Leonard , Yes Sir
  • asked a question related to Fortran
Question
4 answers
a fortran code with ARPACK library
this is error
Error with _neupd, info= -14 check the documentation of _neupd.
Relevant answer
Answer
When you want an advance search for online forums that have as well elections on Fortran. Stackoverflow would be one of those. There are coders willing to help others with any language and coding problem.
  • asked a question related to Fortran
Question
2 answers
I am writing an UEL subroutine and I also need to write input file for abaqus.u,c,ρ are unknowns variables.
How can I define these boundary conditions in the input file?
Relevant answer
Answer
Please guide me in both cases, I am going to write these boundary conditions in the input file but I do not know how?
For example, I know for uz=0, the displacement is zero and I found the keyword to write in the input file;
*Boundary
peripheral,3,3,0.0
Please help me with ∇c=0 , c∂u/∂t=0.
  • asked a question related to Fortran
Question
7 answers
Notepad++ is widely used by Windows users but not natively supported for Mac OS. Which Fortran code IDE will you recommend to Fortran people using Mac OS?
Relevant answer
Answer
VS code s is available. You can install the following extensions
Modern Fortran, Fotran Intellisense and Fortran
  • asked a question related to Fortran
Question
8 answers
I have multiple files in a folder which has similar names but with different numerical labelling. For example, the files are named as phi=1_theta=1, phi=1_theta=2, phi=2_theta=1 and so on. The labelling of the file is attached in this question as well. How to write a suitable Fortran code to open these files using loop?
There are overall 16 phis' x 16 thetas' files in the folder.
Relevant answer
Answer
I had the same problem but if you close each file after opening
then it will read all files
  • asked a question related to Fortran
Question
1 answer
I'am trying to do a Heat transfer simulation in abaqus.
I have sucessfully passed the verification check and the link between fortran compiler and abaqus is established, and further verified as the UMAT subroutine is working.
Has anyone experinces that only the DFLUX is causing compilation errors?
Relevant answer
Answer
Hi Kenneth,
Have you tried putting the DFLUX code in a file and compiling separately from an Abaqus analysis? There will be some predictable errors because the code is a subroutine alone, but you may also find some other errors. This might help to debug the code.
Regards,
Simon
  • asked a question related to Fortran
Question
18 answers
I am interested in recovering my knowledge in FORTRAN, but I want to know if it is worth investing the time or better to dedicate myself to another language such as PYTHON
Relevant answer
The question is: many old and yet super-valuable scientific codes were written in FORTRAN. If one wants to use or introduce changes in these codes, this one has to learn FORTRAN. This language also evoluted along the time; do you know FORTRAN 90, for example?
  • asked a question related to Fortran
Question
2 answers
I want to make further study about the material point method in Geotechnical Engineering (such as earthquake), but I don't know which software to choose. I contacted anura3d first, but I still need secondary development to realize the loaded seismic wave boundary conditions(versus time). I just knew the CB-Geo MPM and found that this software seems to meet the requirements. This is my first time learning FORTRAN and C + + , so I want to ask which one is a better choice.
Relevant answer
Answer
Anura3D is easier to use due to the use of the GID interface and its documentation with some examples. On the other hand, CB-GEO is a command line program designed to perform high performance calculations. If you want to run large scale simulations (large number of material points), the answer is CB-GEO. I'm not totally sure the status of these implementations, but I think CB-GEO has seismic and also absorbent boundary conditions working on.
  • asked a question related to Fortran
Question
4 answers
I am simulating the motion of the lung as a function of time providing my model with the BC displacement. these displacements are provided in a FORTRAN subroutine, I believe it will be much easier for the system to analyze everything without using the abaqus interface, and in the manual, it is explained how to run the simulation from the command line: https://help.3ds.com/2019/English/DSSIMULIA_Established/SIMACAEEXCRefMap/simaexc-c-analysisproc.htm?ContextScope=all&id=f57d973133414d108bde5daca8e0a127
but I couldn't figure out how to link my FORTRAN code to it. Is it doable?
Thank you so much for your help in advance.
Relevant answer
Answer
Hi,
Not sure if you still need this but in case anyone else might. Simply put in the following command: Abaqus job=<name of .inp file> user=<name of user subroutine file> interactive. (I believe you don't need the file extensions) Be sure to navigate to the correct directory and have both your .inp file and your .f file ready in the said directory. Obviously, the FORTRAN compiler needs to be properly linked to Abaqus properly as well.
  • asked a question related to Fortran
Question
5 answers
hello guys im kinda new to the unconventional components thus i obtained the ultimate and proximate analysis of my feed , and will enter an Ryield reactor where it will be decomposed based on it's proximate and ultimate analysis components while using fortran. I am stuck here i dont know how to continue and how to make my streem decompose in the Ryield
thank you for your help and guidance
Relevant answer
Answer
i want to simulate aspen plus model for rice husk there is some error in the Ryield. can someone help me.
  • asked a question related to Fortran
Question
3 answers
Dear all,
I’m a PhD Student and I work on a finite-element solver (LS-Dyna). It features user-defined subroutines with Fortran programming. In order to use my own subroutine, I need to compile the solver again with their pre-compiled libraries and my added Fortran code.
I need to use a specific compiler version ex : ifort130/ifort170 pgi165... If I don’t use the correct version, I get errors :
"error #7614: A common block name may appear in an OpenMP THREADPRIVATE directive only after the last COMMON statement which specifies the same common block name."
I don’t fully comprehend the issue and I don’t have the background knowledge on THREADPRIVATE behavior nor the time to investigate.
Basically I use their pre-coded Fortran file (made for a specific Fortran compiler version) files and I add my code and it work perfectly. I fear that changing some part of this file might lead to issues with the rest of the code.
The issue I got is that with the new Intel license policy I only get the latest Fortran Compiler version with the new OneAPI software.
I would like to know if Intel gives access to the previous older ifort version, when I get a proper paid license? This would be the easiest way, as LS-Dyna didn’t update their files to the latest versions.
Relevant answer
Answer
Here is my final solution to the problem as I replied in Intel Forum:
-------------------------------------------------------------------------------------------
Dear all,
Thanks you for your time. But unfortunately, I don't have access to the rest of the code to make it compatible with the latest compiler version.
However, I managed to compile both MPP and SMP version of the solver. If someone else have the same issues here are the steps with a virtual machine (Ubuntu 20.04.02) :
As of now, LSTC released "sharedlib" version of the MPP solver. Meaning, we only need to compile the FORTRAN subroutines with any compiler.
I managed to do it with the latest OneAPI version. Here are the steps :
For MPP ls-dyna version : ls-dyna_mpp_d_r10_1_123355_x64_centos65_ifort160_avx2_openmpi1.10.7 (sharedlib version)
1) Install MPI library and define the correct path eg : openmpi-1.10.7 (build tar from ftp lstc : https://ftp.lstc.com/user/mpp-dyna/Tools/OPEN-MPI/openmpi-1.10.7_build.tgz ) eg : put openmpi-1.10.7 folder in /opt/
add openMPI folders to PATH and LD_LIBRARY_PATH temporarily (run command each time ) or permanently in starting bash file eg /.bash.sh  export PATH=$/opt//openmpi-1.10.7/bin:$PATH  export LD_LIBRARY_PATH=$/opt/openmpi-1.10.7/lib:$LD_LIBRARY_PATH
2) install FORTRAN compiler eg oneapi base + oneapi HPC
5) compile make
6) install ls-dyna mpp sharelib (sh extractor from lSTC or DynaS+) 6.1) put umat.so in a folder and add to the library path (REAMDME_howtosetup.so.txt): export LD_LIBRARY_PATH /path/to/my_own/usermat/lib:$LD_LIBRARY_PATH
However, as I have a still running Parallel Studio XE licence for Linux, I tried with the oldest version I had in my archives : PSXE 2017 Update 8
In this version, there is the ifort 2017. The latest files from LS-Dyna are for the ifort160. By changing just the way INTEGER*8 is declared in the UMAT code, I managed to compile a working version of the SMP solver (ls-dyna_smp_d_R12_0_0_x64_redhat65_ifort160).
1) install Parallel XE 2017 (Parallel XE has been replaced by oneAPI 2) Each time you need to compile, you have to add environment variables : source opt/intel/parallel_studio_XE_2017.8.066/bin/psxevars.sh
3) Install libX11-dev sudo apt-get install libx11-dev
4) change makefile paths as : #FC=/opt/intel/compilers_and_libraries_2016/linux/bin/intel64/ifort -qopenmp FC=/opt/intel/compilers_and_libraries_2017.8.262/linux/bin/intel64/ifort -qopenmp
#LD=/opt/intel/compilers_and_libraries_2016/linux/bin/intel64/ifort -qopenmp -sox LD=//opt/intel/compilers_and_libraries_2017.8.262/linux/bin/intel64/ifort -qopenmp -sox
#LF= -static-intel -L/usr/X11R6/lib64 -lX11 -qopenmp -lrt -lstdc++ -lpthread -lstdc++ -lpthread LF= -static-intel -L/usr/lib64 -lX11 -qopenmp -lrt -lstdc++ -lpthread -lstdc++ -lpthread
It is important to note that most of these steps are described in the README files in LSTC ftp server.
Mohamed Maamir
  • asked a question related to Fortran
Question
5 answers
Does anyone know where I can get any free 3-D smoothing spline code for irregular data in fortran?
I've used 1-D and 2-D code from Inoue, H., 1986: A least-squares smooth fitting for irregularly spaced data: Finite-element approach using the cubic B-spline basis. Geophysics, 5, 2051–2066.
cheers, arthur
Relevant answer
Answer
Thanks for raising such an interesting question. Probably some people would be interested in the following special issue.
"Modern Geometric Modeling: Theory and Applications II" (IF=2.258) (Deadline: February 28, 2022)
The scope of the Special Issue includes but is not limited to original research works within the subject of geometric modeling and its applications in engineering, arts, physics, biology, medicine, computer graphics, architecture, etc., as well as theoretical mathematics and geometry which can be applied to problems of geometric modeling. For this Special Issue, we plan to accept the following types of manuscripts:
  • Overviews;
  • Research manuscripts;
  • Short manuscripts which discuss open problems in geometric modeling.
  • asked a question related to Fortran
Question
4 answers
I am trying to calculate the mean squared displacement and had written a code in fortran. I wrote this code using a reference book by Daan Frenkel and Berend Smit on Molecular Dynamics Simulation. I am having a hard time in getting the exact plot as proposed for a particular system. Can anybody have a look at it and suggest me where I am doing wrong in calculating the Mean Squared displacement as function of time.
Also, I would like to mention a little detail of the code. I used Origin shift method here in code where "i1" is for origin shift and calculating particles displacement over (total_time - 1) for all the particles present in a simulation cell. First, I am averaging over the number of data points (tau) accumulated (due to the shift of origin) for each atom for a particular origin (i1) in loop and finally after accumulating it over total number of particles (ntotal) and averaging it(ensemble_avg).
Relevant answer
Answer
I would like to share an article that helped me with the code for mean squared displacement calculation. Hope this will help others who are facing issue with the concept.
  • asked a question related to Fortran
Question
4 answers
I need a chemical engineer who specializes in the Aspen program as well as the Fortran language to work on a research project
Relevant answer
Answer
I have sent you a direct message. We can discuss it. Thankyou.
  • asked a question related to Fortran
Question
1 answer
Hello
I linked abaqus 2017 with visual studio Ultimate 2013 and intel parallel studio xe 2017 and checked abaqus verification. It all shows a correct pass
And I've coded a simple umat, but when I run a the job it shows: Problem during linking - Abaqus/Standard User Subroutines.  This error may be due to a mismatch in the Abaqus user subroutine arguments.  These arguments sometimes change from release to release, so user subroutines  used with a previous release of Abaqus may need to be adjusted 
And when I run it from the command prompt it shows: LINK: Fatal error LNK1181: Cannot open the input file 'oldnames.lib'
Can you help me please?
Relevant answer
Answer
download its library
  • asked a question related to Fortran
Question
2 answers
hello everyone , am using VS 2013, intel parallel studio 2018 and abaqus 2018.
when I try to run the subroutine this error shows up "LINK : fatal error LNK1181: cannot open input file 'vcruntime.lib' " any idea how to fix that :)?
Relevant answer
Answer
I'm facing the same problem. but with ibput file 'oldnames.lib'
If you have the solution, please let me know.
  • asked a question related to Fortran
Question
7 answers
Good day.
I would like to use my own isotherm equation on Aspen Adsorption so I found out that I can use 'user procedure'.
However, when I run my simulation, I'm getting an error message
"No suitable version of Visual Studio was found - compilation aborted.
See the online help for details of the supported compilers."
So, I downloaded Visual Studio as well as FORTRAN compiler but I'm still getting the same error message. One guess is that I didn't link Aspen Adsorption with my own FORTRAN code.
If you have some ideas or insights, would you kindly let me know? Thank you for your time and supports.
Kind regards,
So-mang Kim
Relevant answer
Hello Dear So-Mang Kim, I was having the same problem. I have found that it is possible to write the isotherm inside the Aspen Adsorption and this procedure is most recommended than using a Fortran code. The language is very simple. Here I have written the extended dual-site Langmuir in its standard form:
CONSTRAINTS
// Flowsheet variables and equations...
Within Bed.layer(1).Isotherm(1).User_pPress_Isotherm(1)
For i in FDESet Do
For ii in ComponentList Do
W(i,ii) = IP(1,ii)*IP(2,ii)*exp(IP(3,ii)/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,ii)/(1+IP(2,"CO2")*exp(IP(3,"CO2")/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,"CO2") + IP(2,"N2")*exp(IP(3,"N2")/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,"N2")) +
IP(4,ii)*IP(5,ii)*exp(IP(6,ii)/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,ii)/(1+IP(5,"CO2")*exp(IP(6,"CO2")/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,"CO2")+IP(5,"N2")*exp(IP(6,"N2")/8.314*(1/313 - 1/T(i)))*P(i)*Y(i,"N2"));
EndFor
EndFor
EndWithin
END
In the isotherm assumed for layer, you need to choose the User Submodel.
In the following link, you can find how to write a customized isotherm (look up at workshop 6):
  • asked a question related to Fortran
Question
10 answers
Right now I am studying GRAVSOFT for geoid modeling to use it in my thesis, I tried to read the manual but it was not explaining the GUI Python version (it is explaining the Fortran version), so that I am still confused to understand the software clearly. I would like to understand clearly which data I have to use for determination geoid modeling and the steps (step by step) of doing that using GRAVSOFT programs.
please provide me any documents or any files that can let me understand all the programs inside the GRAVSOFT interface specifically for creating geoid modeling.
Thanks in advance and your comments are appreciated
Relevant answer
Answer
Anas Sharafeldin Mohamed Osman GEOCOL and GEOGRID for gross-error detection.
Good luck
  • asked a question related to Fortran
Question
3 answers
Dear All
I am working on a Reactive distillation simulation for ethyl acetate in Aspen plus Version10. Earlier I got the simulation results and I saved the work successfully. Now it is showing 3 errors "FORTRAN divided by Zero", "Aspen plus internal error", "All your simulation results will be purged".
Can anyone help me to resolve the error
thanks in advance.
Relevant answer
Answer
Ganesh Patil, You can also use another black box, eg ChemCad, you can use MathLab, where you can at least partially follow the course of numerical calculations. Since you deal with the relatively simple system of esterification of acetic acid with ethanol, you might also try to write the program code yourself. The physicochemical data for this system is readily available and dividing by zero is preventable.
  • asked a question related to Fortran
Question
6 answers
I am debugging my Fortran code for my UMAT subroutine, and I noticed that some of my parameters keep changing throughout a subroutine which is strange to me. For example I have the following subroutine :
SUBROUTINE fabric_tensor_Mandel(vm1,vm2,vm3,v_m11,v_m22,v_m33, + sigma_0_plus,sigma_0_minus,vkisi_0,Tau_0,p,q,ro,AA,A,F_F, + vMATRIX_F,NTENS) C INCLUDE 'ABA_PARAM.INC' C PARAMETER (M=3) DIMENSION AA(NTENS,NTENS),A(NTENS),F_F(NTENS,NTENS),F(M,M), + sigma_plus(M),sigma_minus(M),Tau(M,M),vkisi(M,M),v_m(M), + vMM1(M,M),vMM2(M,M),vMM3(M,M),vMM1_v(NTENS),vMM2_v(NTENS), + vMM3_v(NTENS),vM11_dyad(NTENS,NTENS),vM22_dyad(NTENS,NTENS), + vM33_dyad(NTENS,NTENS),vM12_dyad(NTENS,NTENS),vMATRIX_F(M,M), + vM13_dyad(NTENS,NTENS),vM23_dyad(NTENS,NTENS), + vM21_dyad(NTENS,NTENS),vM31_dyad(NTENS,NTENS), + vM32_dyad(NTENS,NTENS),vM12_Sym(NTENS,NTENS), + vM13_Sym(NTENS,NTENS),vM23_Sym(NTENS,NTENS),FFA(NTENS), + vM21_Sym(NTENS,NTENS),vM31_Sym(NTENS,NTENS),FF_inv(NTENS,NTENS), + vM32_Sym(NTENS,NTENS),FF_inv_F(NTENS),F_V(NTENS), + FF_MATRIX(NTENS,NTENS) C C m=[m1;m2;m3]; v_m=(/vm1,vm2,vm3/) C Mi = mi (dyad) mi (eq.38) C MMi=mii*transpose(mii); CALL DYADICPROD(v_m11,v_m11,vMM1,M) CALL DYADICPROD(v_m22,v_m22,vMM2,M) CALL DYADICPROD(v_m33,v_m33,vMM3,M) C %convert to voigt notation C [MM1_V]= convert_matrix_vector(MM1); CALL TENS2VEC(vMM1,M,vMM1_v,NTENS) CALL TENS2VEC(vMM2,M,vMM2_v,NTENS) CALL TENS2VEC(vMM3,M,vMM3_v,NTENS) C (eq. 15-18 Barakuie) DO i=1,3 DO j=1,3 sigma_plus(i) = sigma_0_plus*(ro**p)*((v_m(i))(2*q)) sigma_minus(i) = sigma_0_minus*(ro**p)*((v_m(i))(2*q)) Tau(i,j) = Tau_0*(ro**p)*((v_m(i))(q))*((v_m(j))(q)) vkisi(i,j)=vkisi_0*((v_m(i))(2*q))/((v_m(j))(2*q)) END DO END DO C Construt F (eq.37) DO i=1,3 DO j=1,3 F(i,j)=((1.d0/sigma_plus(1))-(1.d0/sigma_minus(1)))*vMM1(i,j)+ 1 ((1.d0/sigma_plus(2))-(1.d0/sigma_minus(2)))*vMM2(i,j)+ 2 ((1.d0/sigma_plus(3))-(1.d0/sigma_minus(3)))*vMM3(i,j) END DO END DO C Convert to voigt notation C [F_V]= convert_matrix_vector(F); CALL TENS2VEC(F,M,F_V,NTENS) C Construct FF (eq. 36) C Construct the required dyadic product C [M11_dyad]= MM1_V*transpose(MM1_V); CALL DYADICPROD(vMM1_v,vMM1_v,vM11_dyad,NTENS) CALL DYADICPROD(vMM2_v,vMM2_v,vM22_dyad,NTENS) CALL DYADICPROD(vMM3_v,vMM3_v,vM33_dyad,NTENS) CALL DYADICPROD(vMM1_v,vMM2_v,vM12_dyad,NTENS) CALL DYADICPROD(vMM1_v,vMM3_v,vM13_dyad,NTENS) CALL DYADICPROD(vMM2_v,vMM1_v,vM21_dyad,NTENS) CALL DYADICPROD(vMM2_v,vMM3_v,vM23_dyad,NTENS) CALL DYADICPROD(vMM3_v,vMM1_v,vM31_dyad,NTENS) CALL DYADICPROD(vMM3_v,vMM2_v,vM32_dyad,NTENS) C Construct the required symmetric product CALL Symmetric_Zysset_Mandel(vMM1_v,vMM2_v,vM12_Sym) CALL Symmetric_Zysset_Mandel(vMM1_v,vMM3_v,vM13_Sym) CALL Symmetric_Zysset_Mandel(vMM2_v,vMM1_v,vM21_Sym) CALL Symmetric_Zysset_Mandel(vMM2_v,vMM3_v,vM23_Sym) CALL Symmetric_Zysset_Mandel(vMM3_v,vMM1_v,vM31_Sym) CALL Symmetric_Zysset_Mandel(vMM3_v,vMM2_v,vM32_Sym) c Construct fourth-order tensor FF DO i=1,NTENS DO j=1,NTENS F_F(i,j)=((1.d0/(sigma_plus(1)*sigma_minus(1)))*vM11_dyad(i,j))+ 1 ((1.d0/(sigma_plus(2)*sigma_minus(2)))*vM22_dyad(i,j))+ 2 ((1.d0/(sigma_plus(3)*sigma_minus(3)))*vM33_dyad(i,j))- 3 ((1.d0/(sigma_plus(1)*sigma_minus(1)))*(vkisi(1,2)*vM12_dyad(i,j)+ 4 vkisi(1,3)*vM13_dyad(i,j)))- 5 ((1.d0/(sigma_plus(2)*sigma_minus(2)))*(vkisi(2,1)*vM21_dyad(i,j)+ 6 vkisi(2,3)*vM23_dyad(i,j)))- 7 ((1.d0/(sigma_plus(3)*sigma_minus(3)))*(vkisi(3,1)*vM31_dyad(i,j)+ 8 vkisi(3,2)*vM32_dyad(i,j)))+ 9 ((0.5d0/(Tau(1,2)**2.d0))*vM12_Sym(i,j)+ + (0.5d0/(Tau(1,3)**2.d0))*vM13_Sym(i,j)+ + (0.5d0/(Tau(2,1)**2.d0))*vM21_Sym(i,j) + + ((0.5d0/(Tau(2,3)**2.d0))*vM23_Sym(i,j)+ + (0.5d0/(Tau(3,1)**2.d0))*vM31_Sym(i,j)+ + (0.5d0/(Tau(3,2)**2.d0))*vM32_Sym(i,j))) END DO END DO DO i=1,NTENS DO j=1,NTENS FF_MATRIX(i,j)=F_F(i,j) END DO END DO C FF_inv=inv(FF); %compute inverse of 4th order tensor FF CALL INVERT(FF_MATRIX,FF_inv,IPIV,6,X,FSMAL,IOUT) C FF_inv_F=inv(FF)*F_V; CALL KMLT1(FF_inv,F_V,FF_inv_F,NTENS) C A = -0.5*FF_inv_F; %Construct A (3,3) by eq.35 DO K=1,NTENS A(K)=-0.5*FF_inv_F(K) END DO C FFA= FF*A; %double cntraction of 4th-order FF and 2nd order A to be used in eq. 34 CALL KMLT1(F_F,A,FFA,NTENS) C AFFA = transpose(A)*FFA; %(scalar) %Construct A:FF:A (scalar) in the denominator of eq. 34 CALL DOTPROD(A,FFA,AFFA,NTENS) C AA = FF./(1+AFFA); %Construct 4th-order tensor AA DO i=1,NTENS DO j=1,NTENS AA(i,j) =(1/(1+AFFA))*F_F(i,j); END DO END DO RETURN END
but, for example, the matrix F_F changes after the following line:
DO i=1,NTENS DO j=1,NTENS AA(i,j) =(1/(1+AFFA))*F_F(i,j); END DO END DO
Can someone help me why does this happen and what should I do to fix it? Thanks, Faezeh
Relevant answer
Answer
My boss' boss was on the witness stand in a civil suit over a power plant that failed. My boss had written in his notes that the manufacturer's data was FUBAR. The attorney demanded, "Explain to the court what FUBAR means." He glared at my boss and began, "It's a military term like SNAFU," which only made it worse.
  • asked a question related to Fortran
Question
4 answers
after making input file
c--- begin input file ---
h2o # The label of the system, as in SIESTA SystemLabel
bader # the task viz rho, toch, bader drho, ldos, vh or vt (in lowercase!!).
4.0 6.0 5.0 # a shift of the origin of coordinates (in bohr).
2 #an integer (nskip) that specifies the density of grid points in the output. F
unformatted
c--- end input file ---
give me error
At line 124 of file grid2cube.f (unit = 5, file = 'stdin')
Fortran runtime error: Bad integer for item 1 in list input
Relevant answer
Answer
  • asked a question related to Fortran
Question
4 answers
Do I need to install the Fortran compiler to identify the (Dynamic Link Library)DLL of TESS file?
I get this error:
type 105 : A TYPE was called in the TRNSYS input file but was either not linked into trndll.dll or was not found in an external dll. A dummy subroutine was called in its place. Please link the TYPE or remove it from the input file
Relevant answer
Answer
TRNSYS 16 a TRaN sient S Ystem Simulation program
  • asked a question related to Fortran
Question
2 answers
I need to find a Fortran module of AIREBO. I am not using LAMMPS. I am using my own code, and I would like to include the AIREBO C-C potentials for graphene.
Relevant answer
Answer
Asdrubal Lozada Thank you.
  • asked a question related to Fortran
Question
2 answers
Hi,
I am writing simple DFLUX subroutine for Abaqus, trying to run some transient simulation. I have to define FLUX(1) as subject to temperature field of the previous step:
 - of temperature in the node, for which FLUX(1) is defined: This is easily solved by using SOL command
 - of a temperature of another node that is geometrically speaking a bit away: here my problem has occurred: I found that command VOLD(X,Y) calls for a temperature in node Y if X=0, so: VOLD(0,5) returns temperature of node 5.
My simplified function so far looks like this:
FLUX(1)=0.2*SOL+VOLD(0,1155)
When I run it without VOLD, everything is ok. When I add VOLD command, Analysis File Processor completes successfully (this is what Abaqus says), so the code should be sufficient at least in sense of existing commands and encryption, but Abaqus/Standard aborts and from here on I don't know what to do.
I am thinking that problem is probably in FORTRAN code: Maybe VOLD(0,1155) returns not only a number but maybe a vector with some () or [ ] and that is why the equation is nat consistent: Like for example A=2*5+[(17)].
I am new to FORTRAN and has never used it before so I would appreciate any help either on FORTRAN scripting or DFLUX code formation (VOLD etc.)
Thanks in advance and BR.
Relevant answer
Answer
I am facing a similar issue to obtain the nodal temperature within a specified range (radius around x,y,z coordinates). have you find out anything more in the meantime?
  • asked a question related to Fortran
Question
5 answers
Hello all,
I am learning implementation of ABAQUS explicit to solve phase field problems in fracture. Was wondering if I could get any help with a sample VUMAT code (FORTRAN) for the same.
Thanks
Relevant answer
Answer
Good question. I am really interested to follow the other researchers' answers, since this question made me curious about it even more. Thank you.
I hope we can complete exchanging knowledge by reading, recommending, following, and downloading our researches and works, for both of us. Also, answering the questions, so that we get the best out of it.
Note: If there is any possibility to cite from my works, then you are more than welcome.
Regards
  • asked a question related to Fortran
Question
4 answers
As the title says, I am looking to vary a Fortran defined variable in sensitivity analysis.
For example, I am trying to vary the mole ratio of toluene to methanol in a feed stream to study the effects of the molar feed ratio on conversion of toluene.
Relevant answer
Answer
By ensuring that the variable isn't declared as a constant. For instance; https://www.tutorialspoint.com/fortran/fortran_constants.htm
  • asked a question related to Fortran
Question
11 answers
Please share any Example, Tutorial or any article related to CDPM. For a 3D Pushover analysis.
Thanking in anticipation!
Relevant answer
Answer
If you are interested in concrete model for explicit solver (VUMAT), you can use this link to download it
  • asked a question related to Fortran
Question
4 answers
Recently I have wrote a UMAT to deal with relately large arrays(nearly 500*500 double precision) I/O, and I have also appointed the property Depvar as 1000.
However, I encounted the error code 1073741571.
I have searched and found that the heap array size could be adjusted by /heap-arrays:[size].
I have tried but only failures. Could anyone familiar with this give some useful advice? I will owe my gratitude.
Relevant answer
Answer
Dear Fen Fam,
Rename the mkl_avx2.dll in (C: \SI MU L I A\Abaqus\6.14 – 5 (your Abaqus version may be different\code\bin) to mkl_avx2.dll.11.0.0.1.
If the issue is not resolved contact Abaqus support.
Best regards,
Hamed
  • asked a question related to Fortran
Question
3 answers
Dear All,
Hope you are fine and doing well in this pandemic.
I am working on a FORTRAN program, where I need to sum the Gaussian functions over time. I have observed that my computing time is scaling linearly with the number of iterations. I found FFT is useful for such tasks while reading about techniques to reduce the iterations. So, my question is if FFT can efficient for my task, how can I implement it?.
Pseudocode or suggestions are appreciated.
Cheers!
Anji
Relevant answer
Answer
did you read "Five-step FFT algorithm with reduced computational complexity", please see the follwoing link, may be it will help you.
  • asked a question related to Fortran
Question
2 answers
Hello. I am trying to built a new trnsys component. I need to use a zero search function (fzero) in fortran. What function should I use as fzero? I also have found out that SLATEC library includes fzero. May you suggest how I may install this library within gfortran, linking it to TRNSYS compiler?
  • asked a question related to Fortran
Question
1 answer
I am having difficulties in understanding the FORTRAN coding section of TRNSYS Type50. It would be helpful if I could correspond with anyone familiar with coding in FORTRAN environment, and especially TRNSYS.
Thank you
Relevant answer
Answer
you don't have to code in Fortran .. you can simply call EES, Matlab, or Python scripts at each simulation step .. their custom output can be linked to the inputs of other types of the model .. all these scripting tools are relatively easier.
  • asked a question related to Fortran
Question
1 answer
Hallo everybody,
I need to calculate RUMs (Rigid Unit Modes) for a simple inorganic structure of the hexagonal (P6/mmm) polymorph of WO3. In my opinion, there should be no RUMs there, but I need a proof. Can anyone help?
I DL'ded the code, but got a lot of errors from the online fortran compiler...
Relevant answer
Answer
I am doing some research about RUMs, but I cannot find CRUSH code. Could you help me with my study by share this code with me? I am very grateful for you,my email is 3120195010@bit.edu.cn.
  • asked a question related to Fortran
Question
4 answers
Can anyone please tell me where I can get compilable BLAS and LAPACK versions on windows 10 operating system. I know using intel...cygwin and MinGw... But I want a purely windows version using G95 - https://www.g95.org/docs.shtml. Or any other windows compiler - maybe visual studio Fortran compiler.
Thank you,
Ashok.
Relevant answer
Answer
Thanks Bill.
I think Cygwin is the way to go. I go it with cygwin.
Thank you,
Ashok
  • asked a question related to Fortran
Question
1 answer
I want to simulate in abaqus software. There is a vuamp subroutine in my simulation.
in the subroutine there is an equation example dx=cos (x)+ AllKE +AllPD+...   that ALLKE and ALLPD are history output energy.
How can I invoking energy output in subroutine such sensor. the sensor can invoke output such V and U.
is there sample way such sensor or python code to extract history output energy or at least save .txt  energy that can be use it in subroutine with 
open Fortran function. it must be along job solving.
Relevant answer
  • asked a question related to Fortran
Question
1 answer
I want to simulate in abaqus software. There is a vuamp subroutine in my simulation.
in the subroutine there is an equation example dx=cos (x)+ AllKE +AllPD+...   that ALLKE and ALLPD are history output energy.
How can I invoking energy output in subroutine such sensor. the sensor can invoke output such V and U.
is there sample way such sensor or python code to extract history output energy or at least save .txt  energy that can be use it in subroutine with 
open Fortran function. it must be along job solving.
  • asked a question related to Fortran
Question
10 answers
Hi everyone,
I'm looking for a Fortran compiler for Win10 as low-size as possible.
Is there any suggestion?
Relevant answer
Answer
gfortran is also available for Windows:
  • asked a question related to Fortran
Question
12 answers
Hello everyone,
I'm trying to get Fortran Complier for running user subroutines in ABAQUS. It seems Intel has incorporated the Fortran complier into the Parallel studio XE and the cost for the parallel studio XE is quite high for what I actually need it for. I wonder if anyone knows if there's any way to get a license just for the Fortran Complier? I've tried to contact the sales on Intel website but got no response. The retailers seem to all only sell the whole parallel studio licenses.
Thank you.
Connie
Relevant answer
Answer
I would say check with the university as they might have some version of Intel compiler as they often do just don't advertise it. However make sure you get the version for your specific release of Abaqus as different versions of the compiler/linker and Abaqus don't play along nicely, only the versions recommended.
By the way Intel has a student program, where it says you can get a free license for learning and teaching purposes, but I don't know the exact details:
If it is something very quick/non-commercial that you want to try you can probably also get away with downloading the evaluation version where you have 30 days to try it and experiment. Potentially compile the code into a .dll (I assume you use Windows) which works even after the license expired. Or ask someone who has the compiler to create the .dll for you. Obviously if its a long research or commercial work this is not the way going forward.
  • asked a question related to Fortran
Question
4 answers
I'm using ABAQUS/DFLUX/fortran to simulate a welding process, i can finish the simulation on a plate, perfectly controlling the flux route, but when i use the same welding method on a beam, problems found.
ABAQUS errors: Temperature at 1 nodes has fallen below absolute zero.
From the results, i can see that the temperature around the welding point is decresing, sometimes becomes negative, even down to -273 degrees.
Materials and Interaction are showed,
Thanks A LOT!
Relevant answer
Answer
Hi Edo,
is there any chance that you are using the absolute zero temperature and Stefan-Boltzmann constant in your 'model attribute' definition? If the answer is 'yes' then that can cause problems especially if the units are dimensionally inconsistent. Please check for dimensional consistency of your thermophysical properties.
Is there any chance that your simulation job can run without your DFLUX subroutine? Perhaps, by simplifying your model to utilize a constant value heat flux input and just get the feeling that all is well. If this works fine, then by elimination, the problem could be narrowed down to the DFLUX subroutine.
If your DFLUX subroutine is 'borrowed' and not developed from scratch, it can cause you all sorts of problems. Most original authors of subroutines write snippets with the intention to quickly achieve a specific outcome, without consideration for creating a generic code. Such an outcome might be altered slightly because of your Abaqus/CAE model definition. If there is any chance that you can test tiny bits of the overall DFLUX code, without re-writing the entire program, it might unravel the cause of the unusual negative temperature outcome.
Hopefully, these suggestions are a tiny bit helpful.
  • asked a question related to Fortran
Question
4 answers
For Example, I have a South Carolina map comprising of 5833 grid points as shown below in the picture. How do I interpolate to get data for the unsampled points which are not present in 5833 points but within the South Carolina(red region in the picture) region? Which interpolation technique is best for a South Carolina region of 5833 grid points?
Relevant answer
Answer
Dear Vishnu,
in which format is the data, which you would like to interpolate, available: NetCDF, ASCII-Text, Excel, ... ?
  • asked a question related to Fortran
Question
2 answers
. In laser cladding material is added with the movement of a heat source. May I know how to realize it in ABAQUS simulation with user subroutine?
Relevant answer
Answer
Additive manufacture simulation relies on progressive activation of elements. The model mesh and the material will be predefined and the elements should be activated on a specific timestep and be considered in the solution. You can check Abaqus manual for "Element progressive activation"
  • asked a question related to Fortran
Question
12 answers
Hi to all. I am doing a large set of calculations employing as input files called 1.log, 2.log, 3.log,......, 300.log.
Usually I use this definition for the input file: OPEN(5,FILE=' ',STATUS='OLD')
and I must run the program 300 different times to carry out all the calculations.
Is there any way to put an instruction or indtructions inside the program in such a way that the program runs automatically the 300 calculations?
Thanks.
Regards,
Juan
PS. I added a photo. Now my question is how to automatize this instruction to run my 347 calculations!
Relevant answer
Answer
Dear Juan,
The solution presented by Alexis is okay
you need to use a Do loop for incrementing the input files.
This is after assigning a running index to the input files.
Best wishes
  • asked a question related to Fortran
Question
8 answers
I want to work with a open source code software which is written in Fortan 77 code. For that the GNU Fortan G77 compiler is required. I have never used this compiler. Is it possible to install it in a Windows 10 computer? I have heard GNU Fortran G77 is a freeware.Can someone give me a link to download it?
Relevant answer
Answer
As others have hinted, you do not want g77. That has been replaced by gfortran and you should install gfortran instead. It is a good compiler and should handle you old code just fine.
  • asked a question related to Fortran
Question
2 answers
Hi everyone,
Now I work with DEFORM-3D (version 10.2) on Windows 7 64bit, I have installed Absoft Fortran 16.0. There is ready project "DEF_SIM_USR64_Absoftv110.atools" in directory of DEFORM after install. But I can not re-compile it to DEF_SIM64.exe as they commented (from Help file).
These are errors from Absoft Fortran 16.0:
f95 ".\Release\def_usr.obj" -o ".\DEF_SIM_64.EXE" -IPA:debug=on -IPA:source_pu_order=on -stack:51200000 -m64 -O2
def_usr.obj : error LNK2001: unresolved external symbol DEFSIM3D
.\DEF_SIM_64.EXE : fatal error LNK1120: 1 unresolved externals
link reported errors.
amake2: *** Error code 1
amake2: `all' not remade because of errors.
Who have this project which compiled by Absoft Fortran 16.0? Please help me solve this problem (give it for me to refer). Thanks.
Relevant answer
Answer
I'm new to the drawing process and I'm looking for the software Deform 3D to conduct some analysis in my research.
I would like to know where I can find the software to download for free?
Does someone have the installation file of Deform 3D to share with me?
Thanks in advance!
  • asked a question related to Fortran
Question
18 answers
I tried to calculate the smallest number in my machine with gfortran, g++ and clang. I did it by looping as:
a = a / 1.73
In gfortran after 1358 loops, I found that a = 4.9406564584124654E-324, and the value of a never changes from loop 1358 till the end 1500 loop.
It is questionable for me that a non zero real number here a = 4.9406564584124654E-324 divided by a non zero number here 1.73 will keep the same value. The phenomenon seems to the qualification of the ground state energy in a quantum system.
Is this bugs for the gfortran compiler?
I have tested similar codes with gfortran (GNU Fortran 8.2.0 2018, 5.40 201609), g++ (GNU 5.4.0 201609, clang-1000.10.44.4) on Linux (Ubuntu, KylinOS,) and Macintosh. I also tried a =a / 1.7.
All have similar results. A ground state qualification and unchanged value of a.
I guess that it is related to the binary system used by the computer system.
Here with my codes.
Relevant answer
Answer
At least for Fortran, the language provides built-in intrinsic functions to return values like this. User's should not try to "compute" them.
Example:
program small
real(8) :: e, t
e = epsilon(1.0_8)
t = tiny (1.0_8)
write (*,*) "Smallest positive number is ", t
write (*,*) "Smallest number relative to 1 is ", e
end program small
% gf small.f90
% ./a.out
Smallest positive number is 2.2250738585072014E-308
Smallest number relative to 1 is 2.2204460492503131E-016
gfortran on a laptop with an Intel x86_64 processor.
  • asked a question related to Fortran
Question
7 answers
Hello ,
I'm a noob in fortran
I used to use an old fortran program on a unix machine (5 Years ago)
I'm tryig to reuse now on a windows machine. I'm trying to compile it in vain (usign ifort .in an intel compiler using : ifort mkmodel.f)
I know i should use fft libraries but i don't know how.
This is the program i'm trying to compile.
Thanks in advance (i cans send you the file i'm trying to compile)
Relevant answer
Answer
Try gfortran instead. Here's the guide should work perfectly.
1. You can install the fft library for windows from- http://www.fftw.org/install/windows.html
3. And add it to the windows search path: https://docs.microsoft.com/en-us/previous-versions/7d83bc18(v=vs.140)?redirectedfrom=MSDN (follow this path guide)
4. First compile the program: gfortran -c -o test.o test.f90
6. Then, link it with fft library: test.o -LC:\fftw-3.3.4-dll64 -lfftw3-3 ( let's say you have installed it on C:\ directory)
Hope it helps.
  • asked a question related to Fortran
Question
3 answers
I want to minimize TAC of distillation column using optimization module of Aspen Plus.
TAC=energy cost +capital cost/payback period(Objective function).
Energy cost refers to duty of condenser(QC) and duty of reboiler(QR).
Capital cost refers to number of trays(NT), area of reboiler(AR) and condenser area (AC).
It shows we have at least three optimization variables(NT,QR and QC) and all related equations are written in FORTRAN tab of optimization.
Would it be possible to minimize TAC by varying reflux ratio?
As we know, number of trays is specified before. Would it possible to be changed during this kind of optimization?
Relevant answer
Answer
As far as I know its too hard to define an MINLP problem in Aspen.
  • asked a question related to Fortran
Question
3 answers
Stress = Stiffness * strain
But stiffness depends on other 4 stiffness matrix.
I am confused about how to write the code.
Relevant answer
Answer
Hi Animesh,
You can use AceGen in Mathematica to turn your formulations to umat.
Good luck.
  • asked a question related to Fortran