Good evening Sir
1. I am running an analysis in ABAQUS, where I have a beam that I have modeled using 2D beam elements.
2. Now I apply displacements at the two ends and measure the reaction forces. These reaction forces are to be used by my Matlab program.
3. Next, I want to release the above imparted displacements on my ABAQUS beam and see if there are any permanent deformations or not.
4. Lastly, I want to again apply certain displacements at the beam ends ( to the same beam that existed after step 3)
This cycle is to go on.
Do I have to use a restart analysis? Or can it be done using two steps- one for applying the displacement, another for release of displacements- and hence avoiding restart analysis?
Looking forward to hearing from you.
Regards
Rahul
I will just pass them on to you. Than you so much
Perhaps the problem is somewhere else. Could you share your Abaqus input files along with the Matlab scripts? You can send an email to gpapazafeiropoulos@yahoo.gr. I am sorry but I have no idea at the moment.
No, Sir, I didn't. That's why it is so perplexing
Did you create a new folder named "job1_1805-Copy" during the first iteration? If yes, then Abaqus treats this folder as its working directory, so it expects to see the .res file in there. You had better to run your model in a single folder and avoid creating new folders in each iteration, since this often leads to confusion.
George
Thank you, Sir. I proceeded with that but:
Abaqus Error: No restart file was specified.
The Abaqus analysis requires a restart file and cannot be executed.
Abaqus/Analysis exited with error(s).
Reading .fil
Error using Fil2str (line 43)
No such file or directory
Error in AbaqusPS_mod_correct (line 1452)
Rec = Fil2str([Inp_file '.fil']);
So, for my first run, as seen above the code creates job1_1805 folder which contains all the files after the run including the .res file as highlighted. I transfer the .inp file job1_1805-Copy (the last on the above list) to this folder. Even though the .res file required by this input file is already there, it is still giving me the above error.
Never mind, Rahul. Yes, what you describe in your last post is possible. You can create the Abaqus input file in each iteration using Matlab. Check the optimization examples under the "DOWNLOADS" tab to see how you can manage this.
Another point related to your questions is that you do not necessarily need to create a new folder for each Abaqus run. The best practice is to delete the Abaqus files before running the next input file in each iteration.
I am sorry, Sir. I was formulating my problem wrongly. Sorry for all the trouble I have caused due do that.
What I want to do is this:
1. Apply displacements on abaqus beam model.
2. extract restoring forces in matlab
3. use the restoring forces extracted to calculate displacements to be applied on abaqus model.
4. apply the displacement.
e.g
1. I apply displacements a,b,c,d on the concerned nodes through the boundary conditions window.
2.I get restoring forces F1, F2,F3,F4
3.I use these forces to calculate new displacements a+d,b+e,c+f,d+g
4. I apply displacements d,e,f,g on the nodes ,i.e differential displacements
Hence I need to apply additional displacements at each step. For that I would need the state at the previous step.
My approach to tackling the problem:
1. I create a job file, run the first iteration.
2. Using the restart option I create another job file, which imposes the additional displacements
Now since I know the format of this second file, I want to just keep slightly editing it at the critical points, i.e at the boundaries and increase the step number.
I was thinking maybe, I could keep editing the second file in MATLAB and send it to abaqus and so on
Is my thinking correct?
As far as I understand, you want to run steps 2 and 3 of the initial post of this thread, then extract the results in Matlab, then run step 4 in which the displacements have been determined based on the results postprocessed by Matlab. Well, the only way to proceed is the restart analysis. This can be done as follows:
1) Specify *FILE FORMAT, ASCII, *EL FILE and/or *NODE FILE options in the initial input file which contains the two first steps (imposing of displacements and releasing of displacements, i.e. steps 2 and 3 described in the initial post)
2) Extract the results in Matlab using Abaqus2Matlab and calculate from there the new values of displacements to be imposed to the (permanently plastically deformed) model after unloading.
3) Specify in the restart input file in which the step 4 described in the initial post is applied the following options:
*POST OUTPUT and/or *RESTART,READ
*FILE FORMAT,ASCII
*EL FILE and/or *NODE FILE
I have to note that the above are valid for the restarting capability between two Abaqus/Standard analyses. In Abaqus/Explicit the option *FILE FORMAT, ASCII has to be replaced by the option *FILE OUTPUT and the option *POST OUTPUT is not applicable.
I hope this helps,
George
Also, do we need to make a folder to run the .inp file?
Is this step necessary?
Inp_file='job1_1805';
%make a folder to run the actual .inp file
[s, mess, messid]=mkdir(Inp_file);
copyfile([Inp_file '.inp'],[pwd '\' Inp_file '\'])
oldFolder = cd(Inp_file);
Sorry Sir. Yes, the restoring forces from step 1 go to my matlab and used for analysis. This matlab code then gives a new set of displacements that are to be applied to the abaqus model
Regards
Rahul
Hello Rahul,
You should first clarify if the results of step 1 affect the model analyzed in step 2.
George
Good morning Sir
Do I have to keep creating a new model after each cycle? I have 0.3 million such cycles.
Dear Rahul,
1) If the reaction forces which are the results of the step 1 are to be used by Matlab in order to determine any modeling parameters of the step 2 or subsequent steps, then you should do one of the following, depending on your model:
1.1) Restart the analysis to continue step 1 with step 2.
1.2) Import the results of step 1 to a new model in which you run step 2
The restart and import capabilities allow for the transfer of results between consecutive steps, but they have been designed for different applications, see the sections "Restarting an analysis" and "Importing and transferring results" of the Abaqus Analysis User's Guide for more information.
2) If step 2 does not depend on the results of step 1, then you should specify two steps in the same input file, and extract the reaction forces from both steps. Within each step from which you want to postprocess results in Matlab, you should specify the appropriate *NODE FILE and/or *EL FILE options, along with the suitable output variable identifiers. You should also specify *FILE FORMAT, ASCII, but this only in the first step.
Best regards,
George
I think a restart analysis is the only way to go. Because, say in case a plastic deformation remains after removal of displacements from beam ends, I want to use this deformed beam for the next step- i.e to apply a new set of displacements.
How do I incorporate this restart analyis within this MATLAB framework is the question
If I use two steps in the same model (i.e no restart analysis), can I extract reaction forces at beam ends at the end of load application step, i.e. step 2?