Files
LaGriT/test/level03/poisson_circle/input_resolution_1.mlgi
2025-12-17 11:00:57 +08:00

49 lines
1.4 KiB
Plaintext
Executable File

define / MO_H_FIELD / mo_poi_h_field
define / H_ATTRIBUTE / h_field_att
# Y = Ax + B
#
# Slope
# 0.1 works
# 0.2 works
# 0.25 works
# 0.29 works
# 0.295 crashes
# 0.299 crashes
# 0.3 crashes
#
define / SLOPE / 0.29
# Intersect
define / INTERCEPT / 0.0
#
# Create some points and then use the distance from the points to define the user
# defined resolution field h(x,y)
#
cmo / create / mo_pts / / / tet
createpts/xyz/ 1,1,1 /0.1 0.1 0.0/0.1 0.1 0.0/1,1,1/
createpts/xyz/ 1,1,1 /-0.5 -0.7 0.0/-0.5 -0.7 0.0/1,1,1/
compute / distance_field / MO_H_FIELD / mo_pts / dfield
math/multiply/MO_H_FIELD/H_ATTRIBUTE/1,0,0/MO_H_FIELD/dfield/SLOPE/
math/add/MO_H_FIELD/H_ATTRIBUTE/1,0,0/MO_H_FIELD/H_ATTRIBUTE/INTERCEPT/
math / floor / MO_H_FIELD / H_ATTRIBUTE / 1 0 0 / &
MO_H_FIELD / H_ATTRIBUTE / H_SCALE
math / ceiling / MO_H_FIELD / H_ATTRIBUTE / 1 0 0 / &
MO_H_FIELD / H_ATTRIBUTE / 10H_SCALE
cmo / printatt / MO_H_FIELD / H_ATTRIBUTE / minmax
#
# In order to visualize the h(x,y) field, the user can output
# mo_poi_h_field and look at the attribute h_field_att.
# Output will slow things down so output should be commented out
# in production runs.
#
# This is the only place where the user has access to out MO_H_FIELD because it
# will be deleted when createpts / poisson_disk exits.
#
dump / avs / output_h_of_x_y_1.inp / MO_H_FIELD
cmo / delete / mo_pts
finish