Physics Extension

Ground Freezing Example

FISH functions can be called during cycling/solving to solution. FISH can be invoked at any point during each calculation cycle, to override or to add additional physics to the model. Each cycle is one iteration of the steps in the explicit solution scheme; placement of FISH within that sequence can be specified by command.

The following is a simple illustration of using FISH to model ground freezing during a couple thermo-mechanical analysis:

This is an example of a special class of FISH function called an operator that, with restrictions enforced when the function is parsed, allows the function to be called on all threads available. If a normal function is used during cycling, and that function operates on all the zones or grid points in the model – on modern many-core computers this could dominate the overall solution time.

The groundFreezing operator calls another FISH operator freezeZone (definition below) that actually changes the stress and stiffness of the zone and marks it as frozen:

Freezing could be added to the solution processing with a command like the following:

This inserts a call to the groundFreezing FISH operator at the start of every 10th solution step (to further limit the effect on solution time), and tells it to operate on the list of all zones in the model. The :: prefix indicates the list of zones should be split into separate calls for each zone in the list, which will be done on all threads available.

The same thing can be done as part of the solve command, as in the example (see lines 34-36 in the fragment below) . A command such as the following would solve to 1 year of thermal time with a ground freezing check every 10 cycles:

The distinction between the two formulations shown above is that the former is global and will take effect with any subsequent model solve command; the latter specifies execution of FISH only for that particular issuance of model solve.

Between the use of operators to enable multithreading and the interval keyword so the function is only run once every 10 steps the addition of ground freezing physics will have nearly negligible direct effect on the solution time.

The following image displays the results when run on a modified version of the “Infinite Line Heat Source in an Infinite Medium” example problem (See FLAC3D/Index: FLAC3D Examples) in the Help.

This example is very simple but still potentially useful. More accuracy can be added, depending on the needs of the model. For example, more properties can be modified, the constitutive model can be changed to one that supports creep, and the heat of fusion required to change water to ice can be taken into account.


Senaste nytt
  • ITASCA Strengthens North American Delivery of Integrated Geomechanics and Hydrogeology Solutions Drawing on decades of geomechanical and hydrogeological expertise, ITASCA has announced the formation of ITASCA...
    Läs mer
  • Från arkitektdröm till bergmekanik – Adina Sköld stärker ITASCA i Luleå Hon sa aldrig Luleå. Aldrig jord och berg. Det var arkitekt hon skulle bli. I...
    Läs mer
  • Operativ bergmekanik På ITASCA gillar vi en blandning av fältjobb och analyser. Vi erbjuder stöd inom operativ...
    Läs mer

Kommande händelser
15 sep.
ITASCA at EUROCK 2026: Advancing Innovation in Rock Engineering
ITASCA is pleased to announce its participation in EUROCK 2026 – ISRM Regional Symposium, taking place from 15–19 September 2026 in Sko... Läs mer
20 sep.
ITASCA to Participate in CouFrac 2026
ITASCA will be participating in CouFrac 2026, taking place from 20–23 September 2026 in Uppsala, Sweden. The conference brings together... Läs mer
26 okt.
ITASCA at Slope Stability 2026: Strategic Sponsor and Technical Contributor_2
ITASCA is proud to participate as a Strategic Sponsor in Slope Stability 2026, one of the world’s leading international symposiums focu... Läs mer