Hello,
I am analyzing the energy balance in a triaxial compression simulation using the Linear Parallel Bond Model in PFC. I am tracking the boundary work (input energy), parallel bond strain energy, contact strain energy, slip energy, damping energy, and kinetic energy.
When I subtract all these energy components from the boundary work, I still obtain a relatively large residual. I expected the residual to be very small if energy is conserved, especially under quasi-static loading.
My main questions are:
Is there a way to estimate the energy associated with numerical integration or numerical dissipation in PFC, or is this quantity simply unavailable?
Are there any other energy components that I should include in the energy balance for the LPBM?
What are the most common reasons for a large energy residual, and how can it be reduced?
I would appreciate any insights! Thank you!
Dear AlaaAbdallah, Thank you for your use of PFC. You ask about tracking energy in PFC. I attach here a memo that describe energy tracking for a rock-cutting model. The quantities are given and defined in Table 3, and the energies do balance as shown in Fig. 27. For a PFC model, all energy quantities are known, and the energies should balance. I am not aware of energy being associated with numerical integration or numerical dissipation — not sure what you mean by dissipation.
rcSupport9.1c.pdf (8.0 MB)
Dear Prof. Potyondy,
Thank you for your reply and for sharing the document.
By numerical integration, I was referring to any energy imbalance that may rise from the numerical calculations themselves, if such an error exists.
My concern is the following:
According to the documentation for the linear parallel bond model, the model provides four energy partitions (listed in the page: Linear Parallel Bond Model — PFC 6.0 documentation): strain energy, slip energy, dashpot energy, and parallel bond strain energy. In my simulations, I also tracks other energy components, including boundary work, (wall.energy), damping energy (local damping), and kinetic energy. I was also trying to estimate the fracture energy by following each bond breakage and estimate the drop in the parallel strain energy before and after bond breakages.
Is it valid to combine these energy components when evaluating the overall energy balance, even though kinetic energy, damping energy, and boundary work are not explicitly listed in the LPBM energy partitions?
In addition, I did not include the dashpot energy in my calculations, will this affect the energy balance? (I didn’t activate dashpots).
I am just trying to better understand how energy partitioning is defined in the LPBM so that I can determine which energy components should be included in the energy balance and which should be omitted. I also reviewed the rock cutting document you kindly shared. However, it appears that the energy functions used there differ somewhat from those defined for the LPBM, with several additional energy components. In addition, since my work focuses on energy storage and dissipation during triaxial compression testing rather than rock cutting, I was unsure whether the same approach would apply in my case.
I apologize for the long post, and I really appreciate your time and assistance.
Not all energies are associated with the pbonds, they have only
what is shown above. For your triaxial test, consider all possible energy sinks/sources. They are all available for you to monitor (except for damping as noted in the memo, and which you can get by taking remainder of total energy sum). The energy sources/sinks for a triaxial test should, I believe, be the same as for the rock cutting model — think about it and identify all terms. Then monitor all of them. Then make a plot of all of them (plotting histories) and make sure that they sum correctly (input should equal output). The rock-cut package can be downloaded from the link {ShareFile}. Look at function {_rcEnergies} in file {rcPkg9.1c\ExampleProjects2D\rcSrc}.
An example of plotting all energy terms in given in Fig. 27 of the memo.
Dear prof. Potyondy,
Thank you so much for the very informative document and the package. The package has been extremely helpful, and the example clearly explained the energy calculations. I went through the scripts and now have a much better understanding of the energy partitioning.
I also calculated the damping energy using the built-in PFC command (ball.energy(‘energy-damp’)) and compared it with the damping energy inferred from the energy balance. There is a noticeable difference between the two methods. Thus, I was wondering whether it would be valid to calculate the damping energy directly using the built-in command and then interpret the remaining energy residual as the numerical error associated with the time-integration scheme (if such an error exists in the model), rather than treating the residual itself as the damping energy. Would this be an appropriate approach?
Best regards,
Alaa