From 54e97057d53d16cf03fd6aa4aa2ca4980041c6ff Mon Sep 17 00:00:00 2001 From: LastMC Date: Tue, 14 Nov 2023 13:24:30 +0800 Subject: [PATCH] add Cr params --- src/surfaces/metal.cpp | 2 + src/surfaces/metal_ior.inl.h | 98 ++++++++++++++++++++++++++++++++++++ tools/metal_ior.py | 14 ++++++ 3 files changed, 114 insertions(+) diff --git a/src/surfaces/metal.cpp b/src/surfaces/metal.cpp index 9faeaa6d..2e9a18ee 100644 --- a/src/surfaces/metal.cpp +++ b/src/surfaces/metal.cpp @@ -92,6 +92,8 @@ class MetalSurface : public Surface { _ior = register_eta_k("__internal_ior_VN", ior::VN); } else if (eta_name == "li" || eta_name == "lithium") { _ior = register_eta_k("__internal_ior_Li", ior::Li); + } else if (eta_name == "cr" || eta_name == "chromium") { + _ior = register_eta_k("__internal_ior_Cr", ior::Cr); } else [[unlikely]] { LUISA_WARNING_WITH_LOCATION( "Unknown metal '{}'. " diff --git a/src/surfaces/metal_ior.inl.h b/src/surfaces/metal_ior.inl.h index 27c83c8b..b087345e 100644 --- a/src/surfaces/metal_ior.inl.h +++ b/src/surfaces/metal_ior.inl.h @@ -978,3 +978,101 @@ std::array Li{ make_float2(0.1834778545f, 4.154784201f), make_float2(0.1844895579f, 4.181916168f), }; + +std::array Cr{ + make_float2(1.852857143f, 2.661428571f), + make_float2(1.863571429f, 2.679285714f), + make_float2(1.877692308f, 2.697692308f), + make_float2(1.896923077f, 2.716923077f), + make_float2(1.916153846f, 2.736153846f), + make_float2(1.94f, 2.7625f), + make_float2(1.965f, 2.790625f), + make_float2(1.99f, 2.81875f), + make_float2(2.015f, 2.84875f), + make_float2(2.04f, 2.88f), + make_float2(2.065f, 2.91125f), + make_float2(2.092222222f, 2.942222222f), + make_float2(2.122777778f, 2.972777778f), + make_float2(2.153333333f, 3.003333333f), + make_float2(2.183888889f, 3.033888889f), + make_float2(2.218f, 3.06f), + make_float2(2.253f, 3.085f), + make_float2(2.288f, 3.11f), + make_float2(2.323f, 3.135f), + make_float2(2.366f, 3.16f), + make_float2(2.411f, 3.185f), + make_float2(2.456f, 3.21f), + make_float2(2.501f, 3.235f), + make_float2(2.5484f, 3.2496f), + make_float2(2.5964f, 3.2616f), + make_float2(2.6444f, 3.2736f), + make_float2(2.6924f, 3.2856f), + make_float2(2.7404f, 3.2976f), + make_float2(2.7804f, 3.3048f), + make_float2(2.8184f, 3.3108f), + make_float2(2.8564f, 3.3168f), + make_float2(2.8944f, 3.3228f), + make_float2(2.9324f, 3.3288f), + make_float2(2.974285714f, 3.33f), + make_float2(3.017142857f, 3.33f), + make_float2(3.06f, 3.33f), + make_float2(3.102857143f, 3.33f), + make_float2(3.145714286f, 3.33f), + make_float2(3.181212121f, 3.329090909f), + make_float2(3.187272727f, 3.324545455f), + make_float2(3.193333333f, 3.32f), + make_float2(3.199393939f, 3.315454545f), + make_float2(3.205454545f, 3.310909091f), + make_float2(3.211515152f, 3.306363636f), + make_float2(3.217575758f, 3.301818182f), + make_float2(3.215714286f, 3.3f), + make_float2(3.208571429f, 3.3f), + make_float2(3.201428571f, 3.3f), + make_float2(3.194285714f, 3.3f), + make_float2(3.187142857f, 3.3f), + make_float2(3.18f, 3.3f), + make_float2(3.172857143f, 3.3f), + make_float2(3.164285714f, 3.302857143f), + make_float2(3.154761905f, 3.307619048f), + make_float2(3.145238095f, 3.312380952f), + make_float2(3.135714286f, 3.317142857f), + make_float2(3.126190476f, 3.321904762f), + make_float2(3.116666667f, 3.326666667f), + make_float2(3.107142857f, 3.331428571f), + make_float2(3.097619048f, 3.336190476f), + make_float2(3.089111111f, 3.341111111f), + make_float2(3.084666667f, 3.346666667f), + make_float2(3.080222222f, 3.352222222f), + make_float2(3.075777778f, 3.357777778f), + make_float2(3.071333333f, 3.363333333f), + make_float2(3.066888889f, 3.368888889f), + make_float2(3.062444444f, 3.374444444f), + make_float2(3.058f, 3.38f), + make_float2(3.053555556f, 3.385555556f), + make_float2(3.050576923f, 3.390576923f), + make_float2(3.053461538f, 3.393461538f), + make_float2(3.056346154f, 3.396346154f), + make_float2(3.059230769f, 3.399230769f), + make_float2(3.062115385f, 3.402115385f), + make_float2(3.065f, 3.405f), + make_float2(3.067884615f, 3.407884615f), + make_float2(3.070769231f, 3.410769231f), + make_float2(3.073653846f, 3.413653846f), + make_float2(3.076538462f, 3.416538462f), + make_float2(3.079423077f, 3.419423077f), + make_float2(3.087384615f, 3.423692308f), + make_float2(3.096615385f, 3.428307692f), + make_float2(3.105846154f, 3.432923077f), + make_float2(3.115076923f, 3.437538462f), + make_float2(3.124307692f, 3.442153846f), + make_float2(3.133538462f, 3.446769231f), + make_float2(3.142769231f, 3.451384615f), + make_float2(3.152f, 3.456f), + make_float2(3.161230769f, 3.460615385f), + make_float2(3.170461538f, 3.465230769f), + make_float2(3.179692308f, 3.469846154f), + make_float2(3.188923077f, 3.474461538f), + make_float2(3.198153846f, 3.479076923f), + make_float2(3.205633803f, 3.482253521f), + make_float2(3.212676056f, 3.485070423f), +}; diff --git a/tools/metal_ior.py b/tools/metal_ior.py index 0f9aad9e..abdfa252 100644 --- a/tools/metal_ior.py +++ b/tools/metal_ior.py @@ -210,6 +210,20 @@ 551.04, 2.61163, 563.56, 2.66849, 576.67, 2.74249, 590.40, 2.83222, 604.80, 2.90206, 619.92, 2.98700, 635.82, 3.08589, 652.55, 3.18170, 670.18, 3.27479, 688.80, 3.38010, 708.48, 3.49659, 729.32, 3.62312, 751.42, 3.74550, 774.90, 3.87684, 799.90, 4.01648, 826.56, 4.16338, 855.06, 4.31695] + }, + "Cr": { + "n": [188, 1.28, 192, 1.31, 195, 1.35, 199, 1.39, 203, 1.43, 207, 1.46, 212, 1.46, 216, 1.47, 221, 1.45, + 226, 1.43, 231, 1.4, 237, 1.38, 243, 1.36, 249, 1.36, 255, 1.37, 262, 1.38, 269, 1.39, 276, 1.43, + 284, 1.45, 292, 1.48, 301, 1.53, 311, 1.58, 320, 1.65, 332, 1.69, 342, 1.76, 354, 1.84, 368, 1.87, + 381, 1.92, 397, 2, 413, 2.08, 431, 2.19, 451, 2.33, 471, 2.51, 496, 2.75, 521, 2.94, 549, 3.18, + 582, 3.22, 617, 3.17, 659, 3.09, 704, 3.05, 756, 3.08, 821, 3.2, 892, 3.3, 984, 3.41, 1088, 3.58, + 1216, 3.67, 1393, 3.69, 1610, 3.66, 1937, 3.71], + "k": [188, 1.64, 192, 1.65, 195, 1.68, 199, 1.7, 203, 1.7, 207, 1.71, 212, 1.72, 216, 1.72, 221, 1.73, + 226, 1.74, 231, 1.77, 237, 1.8, 243, 1.85, 249, 1.91, 255, 1.97, 262, 2.03, 269, 2.08, 276, 2.15, + 284, 2.21, 292, 2.28, 301, 2.34, 311, 2.4, 320, 2.47, 332, 2.53, 342, 2.58, 354, 2.64, 368, 2.69, + 381, 2.74, 397, 2.83, 413, 2.93, 431, 3.04, 451, 3.14, 471, 3.24, 496, 3.3, 521, 3.33, 549, 3.33, + 582, 3.3, 617, 3.3, 659, 3.34, 704, 3.39, 756, 3.42, 821, 3.48, 892, 3.52, 984, 3.57, 1088, 3.58, + 1216, 3.6, 1393, 3.84, 1610, 4.31, 1937, 5.04] } }